「Tin関数-BricsCAD」の版間の差分
編集の要約なし  | 
				|||
| (同じ利用者による、間の79版が非表示) | |||
| 1行目: | 1行目: | ||
{{  | {{BCAD_LISP_CIVIL}}  | ||
* TinSurface   | ==BricsCAD の Tin 関数 について==  | ||
* TinSurface   | V21以降、BricsCAD LISPは [[TinSurface]] 機能専用のインターフェイスを提供している。(「PRO」ライセンスが必要)  | ||
この新しいAPI部分は、シンプルで柔軟性があり、名前、引数、動作、結果において通常の [[AutoLISP]] のロジックに従うように設計されている。  | |||
* TinSurface 機能は BricsCAD Professional ("PRO") ライセンス レベルを必要とするため、下位レベルのライセンスを使用する場合 (または RunAsLevel=0 などで無効にする場合)、API モジュールはアクティブではなく、すべての TinSurface LISP API 機能は「無操作」モードで作動する。  | |||
* TinSurface の開発が常に継続されているため、BRXおよびLISP APIも拡張され、より多くの機能を提供し、サードパーティ開発者からのアイデアやフィードバックも取り込まれている。  | |||
* [[Civil関数-BricsCAD]] と合わせて使うことが多い  | |||
=== ライセンスレベルの確認方法は? ===  | === ライセンスレベルの確認方法は? ===  | ||
* (bcad$LicenseLevels) と (vle-licenselevel) の2つのLisp関数があり、どちらも同じ実装を使用している。  | * ( [[bcad$LicenseLevels]] ) と ( [[vle-licenselevel]] ) の2つのLisp関数があり、どちらも同じ実装を使用している。  | ||
* TinSurfaceが使用可能な場合、返されるリストには "Professional "という文字列が含まれる。  | * TinSurfaceが使用可能な場合、返されるリストには "Professional "という文字列が含まれる。  | ||
* "RunAsLevel "の設定も結果リストで尊重されます。  | * "RunAsLevel "の設定も結果リストで尊重されます。  | ||
== TinSurface のLISP APIを有効にするには? ==  | |||
TinSurface(不規則三角形で構成されたサーフェス)+ Civil の LISP機能セットは明示的にロード/アクティブ化する必要がある。  | |||
(AutoCAD AutoLISPで必須の(vl-load-com)と似た使い方)。  | (AutoCAD AutoLISPで必須の(vl-load-com)と似た使い方)。  | ||
  (vl-load-tin) ;   |   (vl-load-tin) ; tinサーフェス系APIをロードする  | ||
すべてのコンテキスト条件 (PRO以上の実行レベル) が満たされている場合、拡張機能がロードされ、T (または TinSurface/Civil API 部分が利用できない場合は NIL) が返される。  | すべてのコンテキスト条件 (PRO以上の実行レベル) が満たされている場合、拡張機能がロードされ、T (または TinSurface/Civil API 部分が利用できない場合は NIL) が返される。  | ||
== いくつかの一般的なヒントとルール ==  | == いくつかの一般的なヒントとルール ==  | ||
「エンティティ名」の使用 :   | 「エンティティ名」の使用 : 関数が「エンティティ名」を必要とする場合、「クラシック名(ename)」と「vlaオブジェクト」の両方がサポートされている。  | ||
== TinSurface + Civil API の関数一覧 ==  | |||
とりあえず一覧。  | |||
=== Tin サーフェス関数 ===  | |||
すべてのTin Surface関数は、接頭辞 "tin:" を使用。  | |||
<div class="mcol2">  | <div class="mcol2">  | ||
====Tinサーフェス作成関数====  | |||
* [[tin:createTin]]  | |||
==== 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:  | * [[tin:gettrianglescount]]  | ||
*  | * [[tin:isautoupdate]] V24.2で追加  | ||
* [[tin:isrebuildpossible]] V24.2で追加  | |||
*  | * [[tin:isupdateneeded]] V24.2で追加  | ||
* [[tin:istinsurface]]  | |||
*  | |||
==== tin サーフェスセットプロパティ関数 ====  | |||
* [[tin:setautoupdate]] V24.2で追加  | |||
* [[tin:setdescription]]  | |||
*** [[tin:  | * [[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:importcivil3d]]  | |||
</div>  | |||
=== Tin サーフェス拘束関数 ===  | |||
すべてのTinサーフェス拘束関数は、接頭辞: "tinc: "を使用。  | |||
<div class="mcol2">  | |||
==== tinサーフェス拘束の作成 関数 ====  | |||
** [[tinc:createboundarybypoints]]  | |||
** [[tinc:createboundarybyentity]]  | |||
** [[tinc:createbreaklinebypoints]]  | |||
** [[tinc:createbreaklinebyentity]]  | |||
** [[tinc:createwallbypoints]]  | |||
** [[tinc:createwallbyentity]]  | |||
**   | |||
*** [[  | ==== tinサーフェス拘束の get プロパティ関数 ====  | ||
*** [[  | ** [[tinc:getallconstraints]]  | ||
** [[tinc:getboundarytype]]  | |||
** [[tinc:getbreaklinetype]]  | |||
** [[tinc:getbreaklineelevation]]  | |||
** [[tinc:getconstraintid]]  | |||
** [[tinc:getconstrainttype]]  | |||
** [[tinc:getwallheight]]  | |||
** [[tinc:getwallside]]  | |||
** [[tinc:getwalltype]]  | |||
** [[tinc:isvalidconstraint]]  | |||
** [[tinc:getmidordinatedistance]]  | |||
==== tinサーフェス拘束の set プロパティ関数 ====  | |||
** [[tinc:setbreaklineelevation]]  | |||
** [[tinc:setmidordinatedistance]]  | |||
** [[tinc:setwallheight]]  | |||
** [[tinc:setwallside]]  | |||
</div>  | </div>  | ||
==   | |||
=== Tin ボリュームサーフェス関数 ===  | |||
すべてのTin VolumeSurface関数は、接頭辞 : "tinvs: "を使用。  | |||
<div class="mcol2">  | |||
* Tin ボリュームサーフェスの作成関数  | |||
** [[tinvs:createbysurfaceandentity]]  | |||
** [[tinvs:createbysurfaceandpoints]]  | |||
** [[tinvs:createby2surfacesandentity]]  | |||
** [[tinvs:createby2surfacesandpoints]]  | |||
* Tin ボリュームサーフェスの getプロパティ関数  | |||
** [[tinvs:getbasesurface]]  | |||
** [[tinvs:getboundingentity]]  | |||
** [[tinvs:getboundingpolygon]]  | |||
** [[tinvs:getcomparisonsurface]]  | |||
** [[tinvs:getcutvolume]]  | |||
** [[tinvs:getfillvolume]]  | |||
** [[tinvs:getdepthorelevation]]  | |||
** [[tinvs:isvolumesurface]]  | |||
** [[tinvs:volumesurfacetype]]  | |||
</div>  | |||
=== Civil 線形ビュー機能 (alingnment) ===  | |||
シビル垂直線形ビュー(Civil Vertical AlignmentView)のすべての関数は、接頭辞 : "tinav:" を使用。  | |||
<div class="mcol2">  | |||
==== Civil垂直線形ビュー作成関数 ====  | |||
* [[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]]  | |||
==== シビル垂直線形ビュー 編集関数 ====  | |||
* [[tinav:fromwcspoint]]  | |||
* [[tinav:towcspoint]]  | |||
* [[tinav:removegraph]]  | |||
* [[tinav:updateview]]</div>  | |||
=== Civilグレーディング(整地/造成)関数 ===  | |||
すべてのCivil Grading関数は、接頭辞: "tingr: "を使用  | |||
<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]]  | |||
==== グレーディング 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]]  | |||
==== グレーディング ユーティリティ関数 ====  | |||
* [[tingr:convertradtoslope]]  | |||
* [[tingr:convertslopetorad]]  | |||
</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>  | |||
== TinSurface Type 定数 ==  | |||
Lispの定義済み定数は多数あり、ほとんどの場合、これらの定数は次のように組み合わせることができる。  | Lispの定義済み定数は多数あり、ほとんどの場合、これらの定数は次のように組み合わせることができる。  | ||
 (+ bcTinStyleTriangles bcTinStyleContours)  | |||
(+ bcTinStyleTriangles bcTinStyleContours)   |  12  | ||
{| class="wikitable"    | {| class="wikitable"    | ||
! !! 変数名/シンボル名 !! 整数 !!   | ! !! 変数名/シンボル名 !! 整数 !! Tinサーフェス タイプ  | ||
|-    | |-    | ||
| || bcTinStyleNone || 0 || clears all   | |Style flag|| 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 || メッシュ生成:標高を指定  | ||
| 256行目: | 334行目: | ||
| || 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 || 誤った状態・結果を示す。  | ||
| 289行目: | 373行目: | ||
|-    | |-    | ||
| || 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を表示する  | ||
| 303行目: | 393行目: | ||
|-    | |-    | ||
| || bcTinOuter || 2 || boundaryは外側の境界線(「クリップ」)。  | | || bcTinOuter || 2 || boundaryは外側の境界線(「クリップ」)。  | ||
|-   | |||
| ||  ||  ||   | |||
|-    | |-    | ||
| ECropType || bcTinRemoveBreaklines || 0 || ブレイクラインを削除  | | ECropType || bcTinRemoveBreaklines || 0 || ブレイクラインを削除  | ||
|-    | |-    | ||
| || bcTinLeaveBreaklines || 1 || ブレイクラインを保つ  | | || bcTinLeaveBreaklines || 1 || ブレイクラインを保つ  | ||
|-   | |||
| ||  ||  ||   | |||
|-    | |-    | ||
| EVolumeMethod || bcTinVolumeSimplePrisms || 0 || 正味の体積を返すだけで、表面は同じ境界を持つ必要がある。  | | EVolumeMethod || bcTinVolumeSimplePrisms || 0 || 正味の体積を返すだけで、表面は同じ境界を持つ必要がある。  | ||
| 319行目: | 413行目: | ||
|-    | |-    | ||
| || bcTinVolumeIsopachytesDrape || 5 ||  | | || bcTinVolumeIsopachytesDrape || 5 ||  | ||
|-   | |||
| ||  ||  ||   | |||
|-    | |-    | ||
| ECivilLabelImportFlags || bcTinCivil3dNoLabels || 0 || インポートラベルなし  | | ECivilLabelImportFlags || bcTinCivil3dNoLabels || 0 || インポートラベルなし  | ||
|-    | |-    | ||
| || bcTinCivil3dSurfaceLabels || 1 ||   | | || bcTinCivil3dSurfaceLabels || 1 || インポートするサーフェスラベル  | ||
|-    | |-    | ||
| || bcTinCivil3dAlignmentsLabels || 2 ||   | | || bcTinCivil3dAlignmentsLabels || 2 || インポートする線形ラベル  | ||
|-    | |-    | ||
| || bcTinCivil3dUnattachedLabels || 4 || インポートする未貼付のラベル  | | || bcTinCivil3dUnattachedLabels || 4 || インポートする未貼付のラベル  | ||
|-    | |-    | ||
| ||   | | || いくつかのプリセットな組み合わせ : || ||    | ||
|-    | |-    | ||
| || bcTinCivil3dDefaultLabels || 6 || bcTinCivil3dSurfaceLabels + bcTinCivil3dUnattachedLabels  | | || bcTinCivil3dDefaultLabels || 6 || bcTinCivil3dSurfaceLabels + bcTinCivil3dUnattachedLabels  | ||
|-    | |-    | ||
| || bcTinCivil3dAllLabels || 255 ||   | | || bcTinCivil3dAllLabels || 255 || ラベルはすべて取り込み  | ||
|-   | |||
| ||  ||  ||   | |||
|-    | |-    | ||
| ETinGradingSide || bcTinGradingSideNone || -1  | | ETinGradingSide || bcTinGradingSideNone || -1  | ||
|-    | |-    | ||
| || bcTinGradingSideLeft || 0 ||   | | || bcTinGradingSideLeft || 0 || 右側グレーディング  | ||
|-    | |-    | ||
| || bcTinGradingSideRight || 1 ||   | | || bcTinGradingSideRight || 1 || 右側グレーディング  | ||
|-  | |-  | ||
|   | | ||  ||  ||    | ||
|-    | |-    | ||
| ||   | | ETinGradingType || bcTinGradingTypeNone || -1 || 未定義のグレーディングタイプ  | ||
|-    | |-    | ||
| || bcTinGradingTypeSlopeOffset || 1 ||   | | || bcTinGradingTypeSlopeSurface || 0 || サーフェスタイプ  | ||
|-   | |||
| || bcTinGradingTypeSlopeOffset || 1 || スロープオフセットタイプ   | |||
|-   | |||
| ||  ||  ||   | |||
|-    | |-    | ||
| ETinSlopeFormat || bcTinSlopeNoFormat || -1  | | ETinSlopeFormat || bcTinSlopeNoFormat || -1  | ||
|-    | |-    | ||
| || bcTinSlopeRiseRun || 0 ||   | | || bcTinSlopeRiseRun || 0 || ライズランフォーマット使用  | ||
|-    | |-    | ||
| || bcTinSlopeDegrees || 1 ||   | | || bcTinSlopeDegrees || 1 || 度を使用  | ||
|-    | |-    | ||
| || bcTinSlopePercent || 2 ||   | | || bcTinSlopePercent || 2 || パーセントを使用  | ||
|-    | |-    | ||
| || bcTinSlopeRadians || 3 ||   | | || bcTinSlopeRadians || 3 || ラジアンを使用  | ||
|-    | |-    | ||
|   | | ||  ||  ||    | ||
|-    | |-    | ||
| || bcTinGradingFast || 1 ||   | | ETinGradingCalculationMethod || bcTinGradingAccurate || 0 || 精密計算を使用  | ||
|-   | |||
| || bcTinGradingFast || 1 || 高速計算を使用(少し精度が落ちる)  | |||
|-  | |-  | ||
| ETinGradingVisualStyle (bit flags) || bcTinGradingDrawNothing || 0 ||   | | ||  ||  ||   | ||
|-   | |||
| ETinGradingVisualStyle (bit flags) || bcTinGradingDrawNothing || 0 || 非可視化  | |||
|-   | |||
| || bcTinGradingDrawSurface ||1 || サーフェスをビジュアル化  | |||
|-    | |-    | ||
| ||   | | || bcTinGradingDrawRays ||2 || 光線をビジュアル化  | ||
|-    | |-    | ||
| ||   | | || bcTinGradingDrawDaylight || 4 || 昼光輪郭表示をビジュアル化  | ||
|-    | |-    | ||
| ||   | | ||  ||  ||    | ||
|-    | |-    | ||
| ETinGradingStatus (bit flags) || bcTinGradingNoStatus || 0 ||    | | ETinGradingStatus (bit flags) || bcTinGradingNoStatus || 0 ||    | ||
| 401行目: | 509行目: | ||
|-    | |-    | ||
|}  | |}  | ||
[[Category:BricsCADのLISP]]  | |||
2025年4月19日 (土) 08:12時点における最新版
BricsCAD の Tin 関数 について
V21以降、BricsCAD LISPは TinSurface 機能専用のインターフェイスを提供している。(「PRO」ライセンスが必要) この新しいAPI部分は、シンプルで柔軟性があり、名前、引数、動作、結果において通常の AutoLISP のロジックに従うように設計されている。
- TinSurface 機能は BricsCAD Professional ("PRO") ライセンス レベルを必要とするため、下位レベルのライセンスを使用する場合 (または RunAsLevel=0 などで無効にする場合)、API モジュールはアクティブではなく、すべての TinSurface LISP API 機能は「無操作」モードで作動する。
 - TinSurface の開発が常に継続されているため、BRXおよびLISP APIも拡張され、より多くの機能を提供し、サードパーティ開発者からのアイデアやフィードバックも取り込まれている。
 - Civil関数-BricsCAD と合わせて使うことが多い
 
ライセンスレベルの確認方法は?
- ( bcad$LicenseLevels ) と ( vle-licenselevel ) の2つのLisp関数があり、どちらも同じ実装を使用している。
 - TinSurfaceが使用可能な場合、返されるリストには "Professional "という文字列が含まれる。
 - "RunAsLevel "の設定も結果リストで尊重されます。
 
TinSurface のLISP APIを有効にするには?
TinSurface(不規則三角形で構成されたサーフェス)+ Civil の LISP機能セットは明示的にロード/アクティブ化する必要がある。 (AutoCAD AutoLISPで必須の(vl-load-com)と似た使い方)。
(vl-load-tin) ; tinサーフェス系APIをロードする
すべてのコンテキスト条件 (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 線形ビュー機能 (alingnment)
シビル垂直線形ビュー(Civil Vertical AlignmentView)のすべての関数は、接頭辞 : "tinav:" を使用。
Civil垂直線形ビュー作成関数
シビル線形ビュー 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
 
グレーディング ユーティリティ関数
スナップショット関数
- tin:createsnapshot V24.2で追加
 - tin:hassnapshot V24.2で追加
 - tin:needsnapshotupdate V24.2で追加
 - tin:rebuildsnapshot V24.2で追加
 - tin:removesnapshot V24.2で追加
 
TinSurface Type 定数
Lispの定義済み定数は多数あり、ほとんどの場合、これらの定数は次のように組み合わせることができる。
(+ bcTinStyleTriangles bcTinStyleContours) 12
| 変数名/シンボル名 | 整数 | Tinサーフェス タイプ | |
|---|---|---|---|
| Style flag | 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 |