Tin:drapebyentity

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(Tin:drapebyentity tinEname entity )


機能
エンティティから入力された輪郭を tinEname TinSurface エンティティにドレープ(投影)する。


引数
  • tinEname : 問い合わせる TinSurface エンティティの ename または vla-object
  • entity : TinSurface に投影される 2D/3D の点リストのリスト


戻り値
閉じたポリゴン輪郭の点リストのリスト、またはNIL


  • メモ :

円弧、円、ポリラインなど、あらゆる「曲線」ベースのエンティティを使用することができ、エンティティは自動的にラスタライズされる。 返されるリストは、1つ以上のポリゴンポイントリストを含むことができる。 tin:drape 関数も参照。


サンプル

(vl-load-tin)
(setq tin (tin:createTin '(0 0 0) '(100 100 100) 1000))
(tin:addpoints tin '((10 80 5) (50 50 10) (10 10 2) (80 20 7) (70 60 3) (40 70 10) (25 25 6) (55 55 2) (75 45 5) ))

(command "_circle" "80,20" "25") ; Tinサーフェスに重なる円を作ってから

(tin:drapebyentity  tin (entlast))
((
  (55.2609645895466 16.4658520842209 5.23292604211047)
  (55.1571947526689 17.2008880974173 5.39631541812662)
  (55.0393296245545 18.5982388190702 5.71001721640978)
  (54.9999999999999 20.0 6.02777777777778)
  (55.0393296245545 21.4017611809298 6.34859730994446)
  (55.1119364000693 22.2625512363573 6.54748975272853)
  (55.1571947526689 22.7991119025827 6.61860038991582)
  (55.353224537044 24.1876555826184 6.80499196185172)
  (55.6268021954544 25.5630233489079 6.99199710122165)
  (55.9770669513725 26.9208877856212 7.17902742067194)
  (56.4029167422908 28.2569765488792 7.36549445362302)
  (56.9030116872178 29.5670858091273 7.55081150580308)
  (57.4757783024395 30.847093477939 7.73439550120525)
  (58.1194144522811 32.092972177631 7.91566881666046)
  (58.8318950192929 33.3008019128834 8.09406109925363)
  (59.6109782760185 34.4667824044952 8.26901106086493)
  (60.4542129382992 35.5872450464684 8.43996824418987)
  (61.3589458779208 36.6586644488001 8.60639475468164)
  (62.3223304703363 37.6776695296637 8.76776695296637)
  (63.3413355511999 38.6410541220792 8.41806773572013)
  (64.4127549535316 39.5457870617008 8.06390675274278)
  (65.5332175955048 40.3890217239815 7.70639832551372)
  (66.6991980871166 41.1681049807071 7.34666730781038)
  (67.907027822369 41.8805855477189 6.98584554650212)
  (69.152906522061 42.5242216975605 6.6250683203412)
  (70.4329141908727 43.0969883127822 6.26547076795586)
  (71.7430234511208 43.5970832577092 5.90818431628417)
  (73.0791122143788 44.0229330486275 5.55433312068634)
  (74.4369766510921 44.3731978045456 5.20503052793607)
  (75.0990226131649 44.5048869341757 5.03960904526595)
))
; ラスタライズされた円からの返り値なので、点が多数ある形になる。

(command "_rectang" "0,0" "100,100"); Tinサーフェスを囲むような矩形を作ってから
(tin:drapebyentity  tin (entlast))
nil ; 境界線に重なりがないのでnilになる

関連事項