############################################################## ezdxf (2) pagespaceの設定 ############################################################## ========================================================= dxfファイルにおける paperspace と modelspace について ========================================================= ezdxfにおける"paperspace"と"modelspace"は、DXF(Drawing Exchange Format)ファイル内における表示単位である.図面のモデル、レイアウト、ビューを管理するために使用される.以下にそれぞれの領域の違いを説明する. 1. **Modelspace(モデルスペース)**: - モデルスペースは実際の図面データを含む主要な描画領域である。 - 2Dまたは3Dの図面データ、線、円、ポリライン、テキストなどのCADエンティティがモデルスペース内に配置される。 - 図面の実際のコンテンツや設計要素はモデルスペースに配置され、CADプロジェクトの基盤となる。 2. **Paperspace(ペーパースペース)**: - ペーパースペースは、図面を印刷またはプレビューするためのレイアウトおよびビューを管理する領域である。 - ペーパースペースには、ビューポートと呼ばれる矩形の表示領域が含まれます。これらのビューポートはモデルスペース内の特定の部分を表示する - ペーパースペース内でテキスト、寸法、表題ブロックなどの図面の注釈やレイアウトを配置する。 - ペーパースペースを使用して、図面全体を印刷可能な形式に整理し、印刷設定を管理できる。 モデルスペースは実際のCADデータを保持し、ペーパースペースは印刷や表示のためにそのデータを整理するためのレイアウト領域を提供する。この2つの領域を適切に管理することによって、CAD図面をプロフェッショナルに設計し、出力できる。 (generated by chatGPT, supervised by K.N.) ========================================================= 基本サンプル ========================================================= 基本のサンプルプログラムを掲載する. .. literalinclude:: codes/ezdxf__pagespace.py :caption: pagespace の基本プログラム :language: python :emphasize-lines: 25-28 ========================================================= paperspace使おうと思ってたけど、困難で挫折した件 ========================================================= * paperspaceのextminやextmaxの取得がわからない + viewportの設定を、"Layout1"で拾おうとすると、なかなかうまくいかない. + 全体のviewportと、viewportで指定したviewportの2つがあって、"Layout1"から拾うようにすると全体のやつを拾ってきて、思うように情報取得できない. + doc.entities()を取得すると、viewportエンティティが2つある. + entities[-1] などで、指定して、.dxf.all_existing_dxf_attribs()をすると、描画エリアの情報が設定されていたりする. + viewportを探すのに苦労する.