「Tin+civil関数-BricsCAD」の版間の差分
(同じ利用者による、間の47版が非表示) | |||
1行目: | 1行目: | ||
{{BCAD_LISP}} | {{BCAD_LISP}} | ||
==BricsCAD の Tin + Civil関数 について== | ==BricsCAD の Tin + Civil関数 について== | ||
V21以降、BricsCAD LISPは TinSurface + | V21以降、BricsCAD LISPは [[TinSurface]] + [[Civil]]機能専用のインターフェイスを提供している。(「PRO」ライセンスが必要) | ||
この新しいAPI部分は、シンプルで柔軟性があり、名前、引数、動作、結果において通常の [[AutoLISP]] のロジックに従うように設計されている。 | |||
* TinSurface + Civil 機能は BricsCAD Professional ("PRO") ライセンス レベルを必要とするため、下位レベルのライセンスを使用する場合 (または RunAsLevel=0 などで無効にする場合)、API モジュールはアクティブではなく、すべての TinSurface LISP API 機能は「無操作」モードで作動する。 | * TinSurface + Civil 機能は BricsCAD Professional ("PRO") ライセンス レベルを必要とするため、下位レベルのライセンスを使用する場合 (または RunAsLevel=0 などで無効にする場合)、API モジュールはアクティブではなく、すべての TinSurface LISP API 機能は「無操作」モードで作動する。 | ||
10行目: | 10行目: | ||
=== ライセンスレベルの確認方法は? === | === ライセンスレベルの確認方法は? === | ||
* (bcad$LicenseLevels) と (vle-licenselevel) の2つのLisp関数があり、どちらも同じ実装を使用している。 | * ( [[bcad$LicenseLevels]] ) と ( [[vle-licenselevel]] ) の2つのLisp関数があり、どちらも同じ実装を使用している。 | ||
* TinSurfaceが使用可能な場合、返されるリストには "Professional "という文字列が含まれる。 | * TinSurfaceが使用可能な場合、返されるリストには "Professional "という文字列が含まれる。 | ||
* "RunAsLevel "の設定も結果リストで尊重されます。 | * "RunAsLevel "の設定も結果リストで尊重されます。 | ||
== TinSurface LISP APIを有効にするには? == | == TinSurface LISP APIを有効にするには? == | ||
TinSurface | TinSurface(不規則三角形で構成されたサーフェス)+ Civil の LISP機能セットは明示的にロード/アクティブ化する必要がある。 | ||
(AutoCAD AutoLISPで必須の(vl-load-com)と似た使い方)。 | (AutoCAD AutoLISPで必須の(vl-load-com)と似た使い方)。 | ||
(vl-load-tin) ; でロードする | (vl-load-tin) ; でロードする | ||
すべてのコンテキスト条件 (PRO以上の実行レベル) が満たされている場合、拡張機能がロードされ、T (または TinSurface/Civil API 部分が利用できない場合は NIL) が返される。 | すべてのコンテキスト条件 (PRO以上の実行レベル) が満たされている場合、拡張機能がロードされ、T (または TinSurface/Civil API 部分が利用できない場合は NIL) が返される。 | ||
== いくつかの一般的なヒントとルール == | == いくつかの一般的なヒントとルール == | ||
「エンティティ名」の使用 : | 「エンティティ名」の使用 : 関数が「エンティティ名」を必要とする場合、「クラシック名(ename)」と「vlaオブジェクト」の両方がサポートされている。 | ||
== TinSurface + Civil API の関数一覧 == | |||
とりあえず一覧。 | |||
== Tin サーフェス関数 == | |||
すべてのTin Surface関数は、接頭辞 "tin:" を使用。 | |||
すべてのTin Surface関数は、接頭辞 | |||
<div class="mcol2"> | <div class="mcol2"> | ||
====Tinサーフェス作成関数==== | |||
* [[tin:createTin]] | |||
* tin | ==== tin サーフェス get プロパティ 関数 ==== | ||
** | * [[tin:getarea2d]] | ||
** [[tin: | * [[tin:getarea3d]] | ||
** [[tin: | * [[tin:getborders]] | ||
** [[tin: | * [[tin:getboundingbox]] | ||
** [[tin: | * [[tin:getclosestpoint]] | ||
** [[tin: | * [[tin:contains]] | ||
** [[tin: | * [[tin:getcontoursatelevation]] | ||
** [[tin: | * [[tin:getdescription]] | ||
** [[tin: | * [[tin:elevationatpoint]] | ||
* [[tin:findtinpointat]] | |||
* [[tin:findtintrianglesat]] | |||
* [[tin:getisassociative]] | |||
* [[tin:getintersectionswithline]] | |||
* [[tin:getmajorcontoursinterval]] | |||
* [[tin:getmajorcontourscolor]] | |||
* [[tin:getminorcontourscolor]] | |||
* [[tin:getminorcontoursinterval]] | |||
* [[tin:getmajorcontours]] | |||
* [[tin:getminorcontours]] | |||
* [[tin:getmaxelevation]] | |||
* [[tin:getminelevation]] | |||
* [[tin:getmesh]] | |||
* [[tin:getmeshbetweensurfaces]] | |||
* [[tin:getmeshoftype]] | |||
* [[tin:get3dsolidbetweensurfaces]] | |||
* [[tin:get3dsolidoftype]] | |||
* [[tin:getname]] | |||
* [[tin:getpoints]] | |||
* [[tin:getpointscount]] | |||
* [[tin:getpointsinsidepolygon]] | |||
* [[tin:getstyle]] | |||
* [[tin:gettriangles]] | |||
* [[tin:gettrianglescount]] | |||
* [[tin:isautoupdate]] V24.2で追加 | |||
* [[tin:isrebuildpossible]] V24.2で追加 | |||
* [[tin:isupdateneeded]] V24.2で追加 | |||
* [[tin:istinsurface]] | |||
==== tin サーフェスセットプロパティ関数 ==== | |||
* [[tin:setautoupdate]] V24.2で追加 | |||
* [[tin:setdescription]] | |||
* [[tin:setisassociative]] | |||
* [[tin:setmajorcontoursinterval]] | |||
* [[tin:setmajorcontourscolor]] | |||
* [[tin:setmajorcontoursinterval]] | |||
* [[tin:setminorcontourscolor]] | |||
* [[tin:setminorcontoursinterval]] | |||
* [[tin:setname]] | |||
* [[tin:setstyle]] | |||
* [[tin:setsurfaceelevation]] | |||
* Civil3d Import | ==== tin 定義関数 ==== | ||
* [[tin:getdefinitioncount]] V24.2で追加 | |||
* [[tin:removedefinitionat]] V24.2で追加 | |||
* [[tin:removealldefinitions]] V24.2で追加 | |||
==== tinサーフェス編集関数 ==== | |||
* [[tin:addpoint]] | |||
* [[tin:addpoints]] | |||
* [[tin:changepointelevations]] | |||
* [[tin:crop]] | |||
* [[tin:cropbyentity]] | |||
* [[tin:drape]] | |||
* [[tin:drapebyentity]] | |||
* [[tin:merge]] | |||
* [[tin:movepoint]] | |||
* [[tin:movepoints]] | |||
* [[tin:raisesurface]] | |||
* [[tin:rebuild]] V24.2で追加 | |||
* [[tin:removepoint]] | |||
* [[tin:removepoints]] | |||
* [[tin:swapedge]] | |||
* [[tin:updatetin]] | |||
==== Civil3d Import ==== | |||
** [[tin:importcivil3d]] | ** [[tin:importcivil3d]] | ||
</div> | </div> | ||
== | == Tin サーフェス拘束関数 == | ||
すべてのTinサーフェス拘束関数は、接頭辞: "tinc: "を使用。 | すべてのTinサーフェス拘束関数は、接頭辞: "tinc: "を使用。 | ||
<div class="mcol2"> | <div class="mcol2"> | ||
==== tinサーフェス拘束の作成 関数 ==== | |||
** [[tinc:createboundarybypoints]] | ** [[tinc:createboundarybypoints]] | ||
** [[tinc:createboundarybyentity]] | ** [[tinc:createboundarybyentity]] | ||
117行目: | 130行目: | ||
==== tinサーフェス拘束の get プロパティ関数 ==== | |||
** [[tinc:getallconstraints]] | ** [[tinc:getallconstraints]] | ||
** [[tinc:getboundarytype]] | ** [[tinc:getboundarytype]] | ||
131行目: | 144行目: | ||
==== tinサーフェス拘束の set プロパティ関数 ==== | |||
** [[tinc:setbreaklineelevation]] | ** [[tinc:setbreaklineelevation]] | ||
** [[tinc:setmidordinatedistance]] | |||
** [[tinc:setwallheight]] | ** [[tinc:setwallheight]] | ||
** [[tinc:setwallside]] | ** [[tinc:setwallside]] | ||
</div> | </div> | ||
== Tin ボリュームサーフェス関数 == | |||
すべてのTin VolumeSurface関数は、接頭辞 : "tinvs: "を使用。 | すべてのTin VolumeSurface関数は、接頭辞 : "tinvs: "を使用。 | ||
<div class="mcol2"> | <div class="mcol2"> | ||
162行目: | 175行目: | ||
</div> | </div> | ||
== | |||
== Civilアライメント(線形)ビュー機能 == | |||
シビル垂直線形ビュー(Civil Vertical AlignmentView)のすべての関数は、接頭辞 : "tinav:" を使用。 | |||
<div class="mcol2"> | <div class="mcol2"> | ||
==== シビル垂直線形ビュー作成関数 ==== | |||
* [[tinav:createvalignmentview]] | |||
==== シビル線形ビュー get プロパティ関数 ==== | |||
* [[tinav:alignmentviewtype]] | |||
* [[tinav:isalignmentview]] | |||
* [[tinav:isverticalalignmentview]] | |||
* [[tinav:ishorizontalalignment]] | |||
* [[tinav:isverticalalignment]] | |||
* [[tinav:getbaseelevation]] | |||
* [[tinav:getgraphat]] | |||
* [[tinav:getgraphcount]] | |||
* [[tinav:gethalignment]] | |||
* [[tinav:getheight]] | |||
* [[tinav:gethorizontalscale]] | |||
* [[tinav:getlength]] | |||
* [[tinav:getorigin]] | |||
* [[tinav:getverticalscale]] | |||
==== シビル垂直線形ビュー set プロパティ関数 ==== | |||
* [[tinav:setbaseelevation]] | |||
* [[tinav:sethalignment]] | |||
* [[tinav:setheight]] | |||
* [[tinav:sethorizontalscale]] | |||
* [[tinav:setlength]] | |||
* [[tinav:setorigin]] | |||
* [[tinav:setverticalscale]] | |||
</div> | ==== シビル垂直線形ビュー 編集関数 ==== | ||
* [[tinav:fromwcspoint]] | |||
* [[tinav:towcspoint]] | |||
* [[tinav:removegraph]] | |||
* [[tinav:updateview]]</div> | |||
== | == Civilグレーディング(造成)関数 == | ||
すべてのCivil Grading関数は、接頭辞: "tingr: "を使用 | すべてのCivil Grading関数は、接頭辞: "tingr: "を使用 | ||
<div class="mcol2"> | <div class="mcol2"> | ||
==== グレーディング 作成関数 ==== | |||
Tin Gradingエンティティを作成し、そのグレーディングルールを定義する。 | |||
グレーディングは拡張された TinSurface エンティティの一種なので、すべての TinSurface プロパティ関数はグレーディングエンティティにも使用できる。 | |||
* [[tingr:createtingrading]] | |||
* [[tingr:setsloperule]] | |||
* [[tingr:setsurfacerule]] | |||
==== グレーディング get プロパティ関数 ==== | |||
* [[tingr:istingrading]] | |||
* [[tingr:get-calculationmethod]] | |||
* [[tingr:get-cutslope]] | |||
* [[tingr:get-fillslope]] | |||
* [[tingr:get-isassociative]] | |||
* [[tingr:get-isclosed]] | |||
* [[tingr:get-isdrawinfill]] | |||
* [[tingr:get-gradingentity]] | |||
* [[tingr:get-gradingtype]] | |||
* [[tingr:get-midordinatedist]] | |||
* [[tingr:get-offset]] | |||
* [[tingr:get-regionend]] | |||
* [[tingr:get-regionstart]] | |||
* [[tingr:get-resultdaylight]] | |||
* [[tingr:get-segmentmaxangle]] | |||
* [[tingr:get-segmentmaxlength]] | |||
* [[tingr:get-slope]] | |||
* [[tingr:get-slopeformat]] | |||
* [[tingr:get-slopeside]] | |||
* [[tingr:get-targetsurface]] | |||
* [[tingr:get-visualstyle]] | * [[tingr:get-visualstyle]] | ||
==== グレーディング set プロパティ関数 ==== | |||
* [[tingr:set-calculationmethod]] | |||
* [[tingr:set-cutslope]] | |||
* [[tingr:set-fillslope]] | |||
* [[tingr:set-isassociative]] | |||
* [[tingr:set-isdrawinfill]] | |||
* [[tingr:set-gradingentity]] | |||
* [[tingr:set-midordinatedist]] | |||
* [[tingr:set-offset]] | |||
* [[tingr:set-regionend]] | |||
* [[tingr:set-regionstart]] | |||
* [[tingr:set-segmentmaxangle]] | |||
* [[tingr:set-segmentmaxlength]] | |||
* [[tingr:set-slope]] | |||
* [[tingr:set-slopeformat]] | |||
** [[tingr:set- | * [[tingr:set-slopeside]] | ||
** [[tingr:set- | * [[tingr:set-visualstyle]] | ||
==== グレーディング ユーティリティ関数 ==== | |||
* [[tingr:convertradtoslope]] | |||
* [[tingr:convertslopetorad]] | |||
</div> | |||
== Civil3D 点変換関数 - V25.1で追加 == | |||
Civil3Dの点変換に関連するすべての関数は、接頭辞 「civil:converter-」を使用する(「civil:get-converter 」を除く)。 | |||
<div class="mcol2"> | |||
* [[civil:get-converter]] | |||
* [[civil:converter-convert]] | |||
* [[civil:converter-attachedlabels]] | |||
* [[civil:converter-unattachedlabels]] | |||
* [[civil:converter-release]] | |||
* [[civil:converter-get-c3d-entities]] | |||
* [[civil:converter-get-c3d-info]] | |||
* [[civil:converter-get-c3d-alignmenttype]] | |||
* [[civil:converter-get-c3d-profiletype]] | |||
* [[civil:converter-get-c3d-basealignment]] | |||
* [[civil:converter-get-c3d-basesurface]] | |||
* [[civil:converter-get-c3d-profiles]] | |||
</div> | |||
== Civil3D ポイントグループ関数 - V25.1で追加 == | |||
すべての Civil3D ポイントグループ関連関数は、接頭辞 「civil:pgroup-」 を使用する。 | |||
ポイントグループは、ポイントグループのフィルタリストで定義された条件とフィルタリングに一致する Civil3D 点エンティティの論理的なコレクションである。 | |||
各ポイントグループには一意の名前と、関連する 64 ビット整数の「ハンドル」があり、dwg データベース内に格納される; | |||
Lispインターフェースは、文字列名と64ビット整数の 「ハンドル 」の両方をサポートしている。 | |||
Lispインターフェースは、ポイントグループにアクセスするための文字列名と64ビット整数の 「ハンドル 」の両方をサポートしている。「_All points 」名を使用するポイントグループは常に存在し、すべてのCivil3D 点エンティティを含む。 | |||
この特別なグループは変更できない(読み取り専用)。ポイントグループ関連関数では、フィルタ定義のクエリや変更を含め、1 つの ポイントグループをクエリおよび編集できる: | |||
<div class="mcol2"> | |||
* [[civil:pgroup-get-numpoints]] | |||
* [[civil:pgroup-get-allpoints]] | |||
* [[civil:pgroup-get-allnumbers]] | |||
* [[civil:pgroup-get-point]] | |||
* [[civil:pgroup-get-name]] | |||
* [[civil:pgroup-isapplicable]] | |||
* [[civil:pgroup-iseditable]] | |||
* [[civil:pgroup-set-name]] | |||
* [[civil:pgroup-need-update]] | |||
* [[civil:pgroup-update]] | |||
</div> | |||
== ポイントグループ関連関数 - V25.1で追加 == | |||
"PointGroups" は、dwgデータベース内に格納されているすべての点グループ オブジェクトのコレクションで、点グループオブジェクトの作成、照会、編集、削除を行うことができる。 | |||
<div class="mcol2"> | |||
* [[civil:pgroups-create]] | |||
* [[civil:pgroups-count]] | |||
* [[civil:pgroups-get]] | |||
* [[civil:pgroups-get-all]] | |||
* [[civil:pgroups-get-lastusedpointnumber]] | |||
* [[civil:pgroups-get-uniquepointnumber]] | |||
* [[civil:pgroups-groupswithpoint]] | |||
* [[civil:pgroups-set-lastusedpointnumber]] | |||
* [[civil:pgroups-remove]] | |||
* [[civil:pgroups-rename]] | |||
* [[civil:pgroups-updatepointgroups]] | |||
</div> | |||
== Civil3D 点関数 - V25.1で追加== | |||
すべての Civil3D 点関連関数は、接頭辞 「civil:point-」 を使用する。 | |||
Civil3D 点はカスタムエンティティとして表現され、番号、名前、生の説明、完全な説明、東経(X)、北緯(Y)、標高(Z)のような多くのプロパティによって定義され、ラベルスタイル、ラベル回転、ラベル位置、ラベルドラッグ、ラベルピン留め、シンボルスタイル、シンボル回転のようないくつかの仕様を使用する。 | |||
* | |||
** [[ | 各点は 0以上の一意な番号を持ち(負の値は許されない)、dwgデータベース内に格納された64ビット整数の 「ハンドル 」によってアクセスされる; | ||
** [[ | Lisp インターフェースは、64 ビット整数の「ハンドル」を使用して Point にアクセスし、プロパティを読み書きする。 | ||
Civil3D 点 は、点グループのフィルタリストに基づき、複数の 点グループのメンバになることができます。 | |||
点 関連関数を使用すると、1 つの Civil3D 点を照会および編集できる: | |||
<div class="mcol2"> | |||
* [[civil:point-get-groupids]] | |||
* [[civil:point-get-groupnames]] | |||
* [[civil:point-get-name]] | |||
* [[civil:point-get-number]] | |||
* [[civil:point-get-rawdesc]] | |||
* [[civil:point-get-fulldesc]] | |||
* [[civil:point-get-description]] | |||
* [[civil:point-get-position]] | |||
* [[civil:point-get-easting]] | |||
* [[civil:point-get-northing]] | |||
* [[civil:point-get-elevation]] | |||
* [[civil:point-get-haselevation]] | |||
* [[civil:point-get-labelid]] | |||
* [[civil:point-get-labelposition]] | |||
* [[civil:point-get-labelrotation]] | |||
* [[civil:point-get-labeldragged]] | |||
* [[civil:point-get-labelpinned]] | |||
* [[civil:point-get-labelleaderverts]] | |||
* [[civil:point-get-symbolid]] | |||
* [[civil:point-get-symbolrotation]] | |||
* [[civil:point-set-name]] | |||
* [[civil:point-set-number]] | |||
* [[civil:point-set-rawdesc]] | |||
* [[civil:point-set-fulldesc]] | |||
* [[civil:point-set-description]] | |||
* [[civil:point-set-position]] | |||
* [[civil:point-set-easting]] | |||
* [[civil:point-set-northing]] | |||
* [[civil:point-set-elevation]] | |||
* [[civil:point-set-haselevation]] | |||
* [[civil:point-set-labelid]] | |||
* [[civil:point-set-labelposition]] | |||
* [[civil:point-set-labelrotation]] | |||
* [[civil:point-set-labelpinned]] | |||
* [[civil:point-set-labelleaderverts]] | |||
* [[civil:point-set-symbolid]] | |||
* [[civil:point-set-symbolrotation]] | |||
* [[civil:point-reset-label]] | |||
* [[civil:point-group-update]] | |||
</div> | |||
== スナップショット関数 == | |||
<div class="mcol2"> | |||
* [[tin:createsnapshot]] V24.2で追加 | |||
* [[tin:hassnapshot]] V24.2で追加 | |||
* [[tin:needsnapshotupdate]] V24.2で追加 | |||
* [[tin:rebuildsnapshot]] V24.2で追加 | |||
* [[tin:removesnapshot]] V24.2で追加 | |||
</div> | </div> | ||
261行目: | 412行目: | ||
Lispの定義済み定数は多数あり、ほとんどの場合、これらの定数は次のように組み合わせることができる。 | Lispの定義済み定数は多数あり、ほとんどの場合、これらの定数は次のように組み合わせることができる。 | ||
(+ bcTinStyleTriangles bcTinStyleContours) | |||
(+ bcTinStyleTriangles bcTinStyleContours) | 12 | ||
{| class="wikitable" | {| class="wikitable" | ||
! !! 変数名/シンボル名 !! 整数 !! | ! !! 変数名/シンボル名 !! 整数 !! Tinサーフェス タイプ | ||
|- | |- | ||
| || bcTinStyleNone || 0 || clears all | | || bcTinStyleNone || 0 || clears all Tinサーフェススタイル | ||
|- | |- | ||
| || bcTinStyleBoundary || 1 || | | || bcTinStyleBoundary || 1 || Tinサーフェスに境界を表示することができる。 | ||
|- | |- | ||
| || bcTinStylePoints || 2 || | | || bcTinStylePoints || 2 || Tinサーフェス上に点を表示することができる。 | ||
|- | |- | ||
| || bcTinStyleTriangles || 4 || | | || bcTinStyleTriangles || 4 || Tinサーフェスに三角形を表示することができる。 | ||
|- | |- | ||
| || bcTinStyleContours || 8 || | | || bcTinStyleContours || 8 || Tinサーフェスに高さコンターを表示することができる。 | ||
|- | |- | ||
| || bcTinStyleElevationTooltip || 16 || | | || bcTinStyleElevationTooltip || 16 || Tinサーフェスにツールチップを表示できる。 | ||
|- | |- | ||
| || bcTinMeshTypeElevation || 1 || メッシュ生成:標高を指定 | | || bcTinMeshTypeElevation || 1 || メッシュ生成:標高を指定 | ||
284行目: | 435行目: | ||
| || bcTinMeshTypeDepth || 2 || メッシュ生成:深さ指定 | | || bcTinMeshTypeDepth || 2 || メッシュ生成:深さ指定 | ||
|- | |- | ||
| || bcTin3dSolidTypeElevation || 1 || | | || bcTin3dSolidTypeElevation || 1 || 3Dソリッド生成:高さ指定 | ||
|- | |- | ||
| || bcTin3dSolidTypeDepth || 2 || | | || bcTin3dSolidTypeDepth || 2 || 3Dソリッド生成:深さ指定 | ||
|- | |- | ||
| || bcTinVolumeBaseComparison || 0 || | | || bcTinVolumeBaseComparison || 0 || ボリュームサーフェス : 基準は底面高さ | ||
|- | |- | ||
| || bcTinVolumeToElevation || 1 || | | || bcTinVolumeToElevation || 1 || ボリュームサーフェス : 基準は標高値 | ||
|- | |- | ||
| || bcTinVolumeToDepth || 2 || | | || bcTinVolumeToDepth || 2 || ボリュームサーフェス : 基準は深さ値 | ||
|- | |- | ||
| || bcTinNoAlignmentView || 0 || | | || bcTinNoAlignmentView || 0 || 非線形ビューエンティティ | ||
|- | |- | ||
| || bcTinAlignmentView || 1 || | | || bcTinAlignmentView || 1 || 汎用線形ビューエンティティ | ||
|- | |- | ||
| || bcTinVAlignmentView || 2 || | | || bcTinVAlignmentView || 2 || 垂直線形ビューエンティティ | ||
|- | |- | ||
| EConstraintType || bcTinBreakline || 0 || | | || || || | ||
|- | |||
| EConstraintType || bcTinBreakline || 0 || ブレイクライン型 | |||
|- | |- | ||
| || bcTinBoundary || 1 || バウンダリー型 | | || bcTinBoundary || 1 || バウンダリー型 | ||
|- | |- | ||
| || bcTinWall || 2 || 壁型 | | || bcTinWall || 2 || 壁型 | ||
|- | |||
| || || || | |||
|- | |- | ||
| EBreaklineType || bcTinBreaklineNomal || 0 || 通常ブレイクライン | | EBreaklineType || bcTinBreaklineNomal || 0 || 通常ブレイクライン | ||
|- | |- | ||
| || bcTinNonDestructive || 1 || 非破壊ブレイクライン | | || bcTinNonDestructive || 1 || 非破壊ブレイクライン | ||
|- | |||
| || || || | |||
|- | |- | ||
| EIntersectionElevation || bcTinNotAllowed || 0 || 誤った状態・結果を示す。 | | EIntersectionElevation || bcTinNotAllowed || 0 || 誤った状態・結果を示す。 | ||
317行目: | 474行目: | ||
|- | |- | ||
| || bcTinElevationMid || 3 || 平均/中位標高を指定する。 | | || bcTinElevationMid || 3 || 平均/中位標高を指定する。 | ||
|- | |||
| || || || | |||
|- | |- | ||
| EWallType || bcTinWallNomal || 0 || 通常壁タイプ | | EWallType || bcTinWallNomal || 0 || 通常壁タイプ | ||
|- | |- | ||
| || bcTinWallProjected || 1 || プロジェクション壁タイプ | | || bcTinWallProjected || 1 || プロジェクション壁タイプ | ||
|- | |||
| || || || | |||
|- | |- | ||
| EWallSide || bcTinWallLeft || 0 || 左側壁タイプ | | EWallSide || bcTinWallLeft || 0 || 左側壁タイプ | ||
|- | |- | ||
| || bcTinWallRight || 1 || 右側壁タイプ | | || bcTinWallRight || 1 || 右側壁タイプ | ||
|- | |||
| || || || | |||
|- | |- | ||
| EBoundaryType || bcTinShow || 0 || 境界内のtinを表示する | | EBoundaryType || bcTinShow || 0 || 境界内のtinを表示する | ||
331行目: | 494行目: | ||
|- | |- | ||
| || bcTinOuter || 2 || boundaryは外側の境界線(「クリップ」)。 | | || bcTinOuter || 2 || boundaryは外側の境界線(「クリップ」)。 | ||
|- | |||
| || || || | |||
|- | |- | ||
| ECropType || bcTinRemoveBreaklines || 0 || ブレイクラインを削除 | | ECropType || bcTinRemoveBreaklines || 0 || ブレイクラインを削除 | ||
|- | |- | ||
| || bcTinLeaveBreaklines || 1 || ブレイクラインを保つ | | || bcTinLeaveBreaklines || 1 || ブレイクラインを保つ | ||
|- | |||
| || || || | |||
|- | |- | ||
| EVolumeMethod || bcTinVolumeSimplePrisms || 0 || 正味の体積を返すだけで、表面は同じ境界を持つ必要がある。 | | EVolumeMethod || bcTinVolumeSimplePrisms || 0 || 正味の体積を返すだけで、表面は同じ境界を持つ必要がある。 | ||
347行目: | 514行目: | ||
|- | |- | ||
| || bcTinVolumeIsopachytesDrape || 5 || | | || bcTinVolumeIsopachytesDrape || 5 || | ||
|- | |||
| || || || | |||
|- | |- | ||
| ECivilLabelImportFlags || bcTinCivil3dNoLabels || 0 || インポートラベルなし | | ECivilLabelImportFlags || bcTinCivil3dNoLabels || 0 || インポートラベルなし | ||
352行目: | 521行目: | ||
| || bcTinCivil3dSurfaceLabels || 1 || インポートする表面ラベル | | || bcTinCivil3dSurfaceLabels || 1 || インポートする表面ラベル | ||
|- | |- | ||
| || bcTinCivil3dAlignmentsLabels || 2 || | | || bcTinCivil3dAlignmentsLabels || 2 || インポートする線形ラベル | ||
|- | |- | ||
| || bcTinCivil3dUnattachedLabels || 4 || インポートする未貼付のラベル | | || bcTinCivil3dUnattachedLabels || 4 || インポートする未貼付のラベル | ||
361行目: | 530行目: | ||
|- | |- | ||
| || bcTinCivil3dAllLabels || 255 || ラベルはすべて取り込み | | || bcTinCivil3dAllLabels || 255 || ラベルはすべて取り込み | ||
|- | |||
| || || || | |||
|- | |- | ||
| ETinGradingSide || bcTinGradingSideNone || -1 | | ETinGradingSide || bcTinGradingSideNone || -1 | ||
368行目: | 539行目: | ||
| || bcTinGradingSideRight || 1 || 右側グレーディング | | || bcTinGradingSideRight || 1 || 右側グレーディング | ||
|- | |- | ||
| || || || | |||
|- | |||
| ETinGradingType || bcTinGradingTypeNone || -1 || 未定義のグレーディングタイプ | | ETinGradingType || bcTinGradingTypeNone || -1 || 未定義のグレーディングタイプ | ||
|- | |- | ||
373行目: | 546行目: | ||
|- | |- | ||
| || bcTinGradingTypeSlopeOffset || 1 || スロープオフセットタイプ | | || bcTinGradingTypeSlopeOffset || 1 || スロープオフセットタイプ | ||
|- | |||
| || || || | |||
|- | |- | ||
| ETinSlopeFormat || bcTinSlopeNoFormat || -1 | | ETinSlopeFormat || bcTinSlopeNoFormat || -1 | ||
383行目: | 558行目: | ||
|- | |- | ||
| || bcTinSlopeRadians || 3 || ラジアンを使用 | | || bcTinSlopeRadians || 3 || ラジアンを使用 | ||
|- | |||
| || || || | |||
|- | |- | ||
| ETinGradingCalculationMethod || bcTinGradingAccurate || 0 || 精密計算を使用 | | ETinGradingCalculationMethod || bcTinGradingAccurate || 0 || 精密計算を使用 | ||
388行目: | 565行目: | ||
| || bcTinGradingFast || 1 || 高速計算を使用(少し精度が落ちる) | | || bcTinGradingFast || 1 || 高速計算を使用(少し精度が落ちる) | ||
|- | |- | ||
| || || || | |||
|- | |||
| ETinGradingVisualStyle (bit flags) || bcTinGradingDrawNothing || 0 || 非可視化 | | ETinGradingVisualStyle (bit flags) || bcTinGradingDrawNothing || 0 || 非可視化 | ||
|- | |- | ||
395行目: | 574行目: | ||
|- | |- | ||
| || bcTinGradingDrawDaylight || 4 || 昼光輪郭表示をビジュアル化 | | || bcTinGradingDrawDaylight || 4 || 昼光輪郭表示をビジュアル化 | ||
|- | |||
| || || || | |||
|- | |- | ||
| ETinGradingStatus (bit flags) || bcTinGradingNoStatus || 0 || | | ETinGradingStatus (bit flags) || bcTinGradingNoStatus || 0 || | ||
429行目: | 610行目: | ||
|- | |- | ||
|} | |} | ||
[[Category:BricsCADのLISP]] |
2024年9月27日 (金) 21:26時点における最新版
BricsCAD の Tin + Civil関数 について
V21以降、BricsCAD LISPは TinSurface + Civil機能専用のインターフェイスを提供している。(「PRO」ライセンスが必要) この新しいAPI部分は、シンプルで柔軟性があり、名前、引数、動作、結果において通常の AutoLISP のロジックに従うように設計されている。
- TinSurface + Civil 機能は BricsCAD Professional ("PRO") ライセンス レベルを必要とするため、下位レベルのライセンスを使用する場合 (または RunAsLevel=0 などで無効にする場合)、API モジュールはアクティブではなく、すべての TinSurface LISP API 機能は「無操作」モードで作動する。
- TinSurface + Civilの開発が常に継続されているため、BRXおよびLISP APIも拡張され、より多くの機能を提供し、サードパーティ開発者からのアイデアやフィードバックも取り込まれている。
ライセンスレベルの確認方法は?
- ( bcad$LicenseLevels ) と ( vle-licenselevel ) の2つのLisp関数があり、どちらも同じ実装を使用している。
- TinSurfaceが使用可能な場合、返されるリストには "Professional "という文字列が含まれる。
- "RunAsLevel "の設定も結果リストで尊重されます。
TinSurface LISP APIを有効にするには?
TinSurface(不規則三角形で構成されたサーフェス)+ Civil の LISP機能セットは明示的にロード/アクティブ化する必要がある。 (AutoCAD AutoLISPで必須の(vl-load-com)と似た使い方)。
(vl-load-tin) ; でロードする
すべてのコンテキスト条件 (PRO以上の実行レベル) が満たされている場合、拡張機能がロードされ、T (または TinSurface/Civil API 部分が利用できない場合は NIL) が返される。
いくつかの一般的なヒントとルール
「エンティティ名」の使用 : 関数が「エンティティ名」を必要とする場合、「クラシック名(ename)」と「vlaオブジェクト」の両方がサポートされている。
TinSurface + Civil API の関数一覧
とりあえず一覧。
Tin サーフェス関数
すべてのTin Surface関数は、接頭辞 "tin:" を使用。
Tinサーフェス作成関数
tin サーフェス get プロパティ 関数
- tin:getarea2d
- tin:getarea3d
- tin:getborders
- tin:getboundingbox
- tin:getclosestpoint
- tin:contains
- tin:getcontoursatelevation
- tin:getdescription
- tin:elevationatpoint
- tin:findtinpointat
- tin:findtintrianglesat
- tin:getisassociative
- tin:getintersectionswithline
- tin:getmajorcontoursinterval
- tin:getmajorcontourscolor
- tin:getminorcontourscolor
- tin:getminorcontoursinterval
- tin:getmajorcontours
- tin:getminorcontours
- tin:getmaxelevation
- tin:getminelevation
- tin:getmesh
- tin:getmeshbetweensurfaces
- tin:getmeshoftype
- tin:get3dsolidbetweensurfaces
- tin:get3dsolidoftype
- tin:getname
- tin:getpoints
- tin:getpointscount
- tin:getpointsinsidepolygon
- tin:getstyle
- tin:gettriangles
- tin:gettrianglescount
- tin:isautoupdate V24.2で追加
- tin:isrebuildpossible V24.2で追加
- tin:isupdateneeded V24.2で追加
- tin:istinsurface
tin サーフェスセットプロパティ関数
- tin:setautoupdate V24.2で追加
- tin:setdescription
- tin:setisassociative
- tin:setmajorcontoursinterval
- tin:setmajorcontourscolor
- tin:setmajorcontoursinterval
- tin:setminorcontourscolor
- tin:setminorcontoursinterval
- tin:setname
- tin:setstyle
- tin:setsurfaceelevation
tin 定義関数
- tin:getdefinitioncount V24.2で追加
- tin:removedefinitionat V24.2で追加
- tin:removealldefinitions V24.2で追加
tinサーフェス編集関数
- tin:addpoint
- tin:addpoints
- tin:changepointelevations
- tin:crop
- tin:cropbyentity
- tin:drape
- tin:drapebyentity
- tin:merge
- tin:movepoint
- tin:movepoints
- tin:raisesurface
- tin:rebuild V24.2で追加
- tin:removepoint
- tin:removepoints
- tin:swapedge
- tin:updatetin
Civil3d Import
Tin サーフェス拘束関数
すべてのTinサーフェス拘束関数は、接頭辞: "tinc: "を使用。
tinサーフェス拘束の作成 関数
tinサーフェス拘束の get プロパティ関数
tinサーフェス拘束の set プロパティ関数
Tin ボリュームサーフェス関数
すべてのTin VolumeSurface関数は、接頭辞 : "tinvs: "を使用。
- Tin ボリュームサーフェスの作成関数
Civilアライメント(線形)ビュー機能
シビル垂直線形ビュー(Civil Vertical AlignmentView)のすべての関数は、接頭辞 : "tinav:" を使用。
シビル垂直線形ビュー作成関数
シビル線形ビュー get プロパティ関数
- tinav:alignmentviewtype
- tinav:isalignmentview
- tinav:isverticalalignmentview
- tinav:ishorizontalalignment
- tinav:isverticalalignment
- tinav:getbaseelevation
- tinav:getgraphat
- tinav:getgraphcount
- tinav:gethalignment
- tinav:getheight
- tinav:gethorizontalscale
- tinav:getlength
- tinav:getorigin
- tinav:getverticalscale
シビル垂直線形ビュー set プロパティ関数
- tinav:setbaseelevation
- tinav:sethalignment
- tinav:setheight
- tinav:sethorizontalscale
- tinav:setlength
- tinav:setorigin
- tinav:setverticalscale
シビル垂直線形ビュー 編集関数
Civilグレーディング(造成)関数
すべてのCivil Grading関数は、接頭辞: "tingr: "を使用
グレーディング 作成関数
Tin Gradingエンティティを作成し、そのグレーディングルールを定義する。 グレーディングは拡張された TinSurface エンティティの一種なので、すべての TinSurface プロパティ関数はグレーディングエンティティにも使用できる。
グレーディング get プロパティ関数
- tingr:istingrading
- tingr:get-calculationmethod
- tingr:get-cutslope
- tingr:get-fillslope
- tingr:get-isassociative
- tingr:get-isclosed
- tingr:get-isdrawinfill
- tingr:get-gradingentity
- tingr:get-gradingtype
- tingr:get-midordinatedist
- tingr:get-offset
- tingr:get-regionend
- tingr:get-regionstart
- tingr:get-resultdaylight
- tingr:get-segmentmaxangle
- tingr:get-segmentmaxlength
- tingr:get-slope
- tingr:get-slopeformat
- tingr:get-slopeside
- tingr:get-targetsurface
- tingr:get-visualstyle
グレーディング set プロパティ関数
- tingr:set-calculationmethod
- tingr:set-cutslope
- tingr:set-fillslope
- tingr:set-isassociative
- tingr:set-isdrawinfill
- tingr:set-gradingentity
- tingr:set-midordinatedist
- tingr:set-offset
- tingr:set-regionend
- tingr:set-regionstart
- tingr:set-segmentmaxangle
- tingr:set-segmentmaxlength
- tingr:set-slope
- tingr:set-slopeformat
- tingr:set-slopeside
- tingr:set-visualstyle
グレーディング ユーティリティ関数
Civil3D 点変換関数 - V25.1で追加
Civil3Dの点変換に関連するすべての関数は、接頭辞 「civil:converter-」を使用する(「civil:get-converter 」を除く)。
- civil:get-converter
- civil:converter-convert
- civil:converter-attachedlabels
- civil:converter-unattachedlabels
- civil:converter-release
- civil:converter-get-c3d-entities
- civil:converter-get-c3d-info
- civil:converter-get-c3d-alignmenttype
- civil:converter-get-c3d-profiletype
- civil:converter-get-c3d-basealignment
- civil:converter-get-c3d-basesurface
- civil:converter-get-c3d-profiles
Civil3D ポイントグループ関数 - V25.1で追加
すべての Civil3D ポイントグループ関連関数は、接頭辞 「civil:pgroup-」 を使用する。
ポイントグループは、ポイントグループのフィルタリストで定義された条件とフィルタリングに一致する Civil3D 点エンティティの論理的なコレクションである。
各ポイントグループには一意の名前と、関連する 64 ビット整数の「ハンドル」があり、dwg データベース内に格納される; Lispインターフェースは、文字列名と64ビット整数の 「ハンドル 」の両方をサポートしている。
Lispインターフェースは、ポイントグループにアクセスするための文字列名と64ビット整数の 「ハンドル 」の両方をサポートしている。「_All points 」名を使用するポイントグループは常に存在し、すべてのCivil3D 点エンティティを含む。
この特別なグループは変更できない(読み取り専用)。ポイントグループ関連関数では、フィルタ定義のクエリや変更を含め、1 つの ポイントグループをクエリおよび編集できる:
ポイントグループ関連関数 - V25.1で追加
"PointGroups" は、dwgデータベース内に格納されているすべての点グループ オブジェクトのコレクションで、点グループオブジェクトの作成、照会、編集、削除を行うことができる。
Civil3D 点関数 - V25.1で追加
すべての Civil3D 点関連関数は、接頭辞 「civil:point-」 を使用する。
Civil3D 点はカスタムエンティティとして表現され、番号、名前、生の説明、完全な説明、東経(X)、北緯(Y)、標高(Z)のような多くのプロパティによって定義され、ラベルスタイル、ラベル回転、ラベル位置、ラベルドラッグ、ラベルピン留め、シンボルスタイル、シンボル回転のようないくつかの仕様を使用する。
各点は 0以上の一意な番号を持ち(負の値は許されない)、dwgデータベース内に格納された64ビット整数の 「ハンドル 」によってアクセスされる;
Lisp インターフェースは、64 ビット整数の「ハンドル」を使用して Point にアクセスし、プロパティを読み書きする。
Civil3D 点 は、点グループのフィルタリストに基づき、複数の 点グループのメンバになることができます。
点 関連関数を使用すると、1 つの Civil3D 点を照会および編集できる:
- civil:point-get-groupids
- civil:point-get-groupnames
- civil:point-get-name
- civil:point-get-number
- civil:point-get-rawdesc
- civil:point-get-fulldesc
- civil:point-get-description
- civil:point-get-position
- civil:point-get-easting
- civil:point-get-northing
- civil:point-get-elevation
- civil:point-get-haselevation
- civil:point-get-labelid
- civil:point-get-labelposition
- civil:point-get-labelrotation
- civil:point-get-labeldragged
- civil:point-get-labelpinned
- civil:point-get-labelleaderverts
- civil:point-get-symbolid
- civil:point-get-symbolrotation
- civil:point-set-name
- civil:point-set-number
- civil:point-set-rawdesc
- civil:point-set-fulldesc
- civil:point-set-description
- civil:point-set-position
- civil:point-set-easting
- civil:point-set-northing
- civil:point-set-elevation
- civil:point-set-haselevation
- civil:point-set-labelid
- civil:point-set-labelposition
- civil:point-set-labelrotation
- civil:point-set-labelpinned
- civil:point-set-labelleaderverts
- civil:point-set-symbolid
- civil:point-set-symbolrotation
- civil:point-reset-label
- civil:point-group-update
スナップショット関数
- tin:createsnapshot V24.2で追加
- tin:hassnapshot V24.2で追加
- tin:needsnapshotupdate V24.2で追加
- tin:rebuildsnapshot V24.2で追加
- tin:removesnapshot V24.2で追加
TinSurface型定数
Lispの定義済み定数は多数あり、ほとんどの場合、これらの定数は次のように組み合わせることができる。
(+ bcTinStyleTriangles bcTinStyleContours) 12
変数名/シンボル名 | 整数 | Tinサーフェス タイプ | |
---|---|---|---|
bcTinStyleNone | 0 | clears all Tinサーフェススタイル | |
bcTinStyleBoundary | 1 | Tinサーフェスに境界を表示することができる。 | |
bcTinStylePoints | 2 | Tinサーフェス上に点を表示することができる。 | |
bcTinStyleTriangles | 4 | Tinサーフェスに三角形を表示することができる。 | |
bcTinStyleContours | 8 | Tinサーフェスに高さコンターを表示することができる。 | |
bcTinStyleElevationTooltip | 16 | Tinサーフェスにツールチップを表示できる。 | |
bcTinMeshTypeElevation | 1 | メッシュ生成:標高を指定 | |
bcTinMeshTypeDepth | 2 | メッシュ生成:深さ指定 | |
bcTin3dSolidTypeElevation | 1 | 3Dソリッド生成:高さ指定 | |
bcTin3dSolidTypeDepth | 2 | 3Dソリッド生成:深さ指定 | |
bcTinVolumeBaseComparison | 0 | ボリュームサーフェス : 基準は底面高さ | |
bcTinVolumeToElevation | 1 | ボリュームサーフェス : 基準は標高値 | |
bcTinVolumeToDepth | 2 | ボリュームサーフェス : 基準は深さ値 | |
bcTinNoAlignmentView | 0 | 非線形ビューエンティティ | |
bcTinAlignmentView | 1 | 汎用線形ビューエンティティ | |
bcTinVAlignmentView | 2 | 垂直線形ビューエンティティ | |
EConstraintType | bcTinBreakline | 0 | ブレイクライン型 |
bcTinBoundary | 1 | バウンダリー型 | |
bcTinWall | 2 | 壁型 | |
EBreaklineType | bcTinBreaklineNomal | 0 | 通常ブレイクライン |
bcTinNonDestructive | 1 | 非破壊ブレイクライン | |
EIntersectionElevation | bcTinNotAllowed | 0 | 誤った状態・結果を示す。 |
bcTinElevationMin | 1 | 最低標高を指定する | |
bcTinElevationMax | 2 | 最大標高を指定する | |
bcTinElevationMid | 3 | 平均/中位標高を指定する。 | |
EWallType | bcTinWallNomal | 0 | 通常壁タイプ |
bcTinWallProjected | 1 | プロジェクション壁タイプ | |
EWallSide | bcTinWallLeft | 0 | 左側壁タイプ |
bcTinWallRight | 1 | 右側壁タイプ | |
EBoundaryType | bcTinShow | 0 | 境界内のtinを表示する |
bcTinHide | 1 | tin を境界の内側に隠す("穴")。 | |
bcTinOuter | 2 | boundaryは外側の境界線(「クリップ」)。 | |
ECropType | bcTinRemoveBreaklines | 0 | ブレイクラインを削除 |
bcTinLeaveBreaklines | 1 | ブレイクラインを保つ | |
EVolumeMethod | bcTinVolumeSimplePrisms | 0 | 正味の体積を返すだけで、表面は同じ境界を持つ必要がある。 |
bcTinVolumeIsopachytes | 1 | 未実施 | |
bcTinVolumeComplexPrisms | 2 | フィル/カット・ボリューム | |
bcTinVolumeElevation | 3 | ボリュームを標高に固定する。 | |
bcTinVolumeDepth | 4 | ボリュームからオフセット面へ | |
bcTinVolumeIsopachytesDrape | 5 | ||
ECivilLabelImportFlags | bcTinCivil3dNoLabels | 0 | インポートラベルなし |
bcTinCivil3dSurfaceLabels | 1 | インポートする表面ラベル | |
bcTinCivil3dAlignmentsLabels | 2 | インポートする線形ラベル | |
bcTinCivil3dUnattachedLabels | 4 | インポートする未貼付のラベル | |
いくつかのプリセットな組み合わせ : | |||
bcTinCivil3dDefaultLabels | 6 | bcTinCivil3dSurfaceLabels + bcTinCivil3dUnattachedLabels | |
bcTinCivil3dAllLabels | 255 | ラベルはすべて取り込み | |
ETinGradingSide | bcTinGradingSideNone | -1 | |
bcTinGradingSideLeft | 0 | 右側グレーディング | |
bcTinGradingSideRight | 1 | 右側グレーディング | |
ETinGradingType | bcTinGradingTypeNone | -1 | 未定義のグレーディングタイプ |
bcTinGradingTypeSlopeSurface | 0 | サーフェスタイプ | |
bcTinGradingTypeSlopeOffset | 1 | スロープオフセットタイプ | |
ETinSlopeFormat | bcTinSlopeNoFormat | -1 | |
bcTinSlopeRiseRun | 0 | ライズランフォーマット使用 | |
bcTinSlopeDegrees | 1 | 度を使用 | |
bcTinSlopePercent | 2 | パーセントを使用 | |
bcTinSlopeRadians | 3 | ラジアンを使用 | |
ETinGradingCalculationMethod | bcTinGradingAccurate | 0 | 精密計算を使用 |
bcTinGradingFast | 1 | 高速計算を使用(少し精度が落ちる) | |
ETinGradingVisualStyle (bit flags) | bcTinGradingDrawNothing | 0 | 非可視化 |
bcTinGradingDrawSurface | 1 | サーフェスをビジュアル化 | |
bcTinGradingDrawRays | 2 | 光線をビジュアル化 | |
bcTinGradingDrawDaylight | 4 | 昼光輪郭表示をビジュアル化 | |
ETinGradingStatus (bit flags) | bcTinGradingNoStatus | 0 | |
bcTinGradingOk | 1 | ||
bcTinGradingUpdateNeeded | 2 | ||
bcTinGradingIncorrectInputData | 4 | ||
bcTinGradingSurfaceMissing | 8 | ||
bcTinGradingRuleMissing | 16 | ||
bcTinGradingInputDataOutsideSurface | 32 | ||
bcTinGradingGradingOutsideSurface | 64 | ||
bcTinGradingOffsetFailed | 128 | ||
bcTinGradingMultipleOffsetResult | 256 | ||
bcTinGradingZeroGrading | 512 | ||
bcTinGradingUnknownError | 1024 | ||
bcTinGradingInputDataMissing | 2048 | ||
bcTinGradingInvalidInput | 4096 | ||
bcTinGradingInvalidRule | 8192 | ||
bcTinGradingTimeout | 16384 |