Jozi68 发表于 2022-7-6 07:25:59

命令:(vlax dump object pl T)
; IACADLWWPolyline2:AutoCAD轻型多段线界面
; 属性值:
;   应用(RO)=#
;   面积(RO)=1811.32
;   关闭=0
;   康斯坦特宽度=0.0
;   坐标=。。。未显示索引内容。。。
;   坐标=(-24729.8-2.87722e+006-24742.3-2.87722e+006-24761.3
-2.87722e+006…)
;   文件(RO)=#
;   标高=0.0
;   EntityTransparency=“ByLayer”
;   手柄(RO)=“18BB8”
;   HasExtensionDictionary(RO)=-1
;   超链接(RO)=#
;   Layer=“2628\u RELIEF10\u LINE\u 2007\u 1”
;   长度(RO)=245.725
;   线型=“ByLayer”
;   线型生成=0
;   线型比例=1.0
;   线宽=-1
;   材料=“ByLayer”
;   正常=(0.0 0.0 1.0)
;   目标ID(RO)=136
;   目标32(RO)=136
;   ObjectName(RO)=“AcDbPolyline”
;   所有者ID(RO)=137
;   所有者32(RO)=137
;   PlotStyleName=“ByLayer”
;   厚度=0.0
;   真彩色=#
;   可见=-1
; 支持的方法:
;   添加顶点(2)
;   ArrayPolar(3)
;   阵列直角(6)
;   复制()
;   删除()
;   分解()
;   GetBoundingBox(2)
;   GetBulge(1)
;   GetExtensionDictionary()
;   GetWidth(3)
;   获取扩展数据(3)
;   突出显示(1)
;   与(2)相交
;   镜子(2)
;   镜像3D(3)
;   移动(2)
;   偏移(1)
;   旋转(2)
;   旋转3d(3)
;   标度(2)
;   SetBulge(2)
;   设置宽度(3)
;   设置扩展数据(2)
;   TransformBy(1)
;   更新()
T

marko_ribar 发表于 2022-7-6 07:27:49

这里也没有,我们看不到“高度”属性。。。那么,您知道如何检索多段线“高度”值吗?似乎这个新属性隐藏在普通实体数据中。。。我们帮不了你,如果我们不能获得这个新的财产价值。。。

marko_ribar 发表于 2022-7-6 07:31:09

现在试试这个:
 

(entget (car (entsel)) '("HEIGHT"))

 
同时拾取多段线并在此处复制并粘贴输出。。。

BIGAL 发表于 2022-7-6 07:35:34

由于其来自shp文件,因此可能在扩展数据中具有高度值,因此不会像aecc对象那样显示“曲面”及其“名称”,但还有更多信息。
 
不确定不要玩shp,把它留给那些知道怎么做的人,但作为导入的一部分,你不能使标高=高度,因此才是真正的三维柱脚。
 
这个问题是不是要在这个基准线上绘制更多的对象?

Jozi68 发表于 2022-7-6 07:37:41

命令:(entget(car(entsel))'(“HEIGHT”))
选择对象:(-1。)(0.“LW多段线”)(5。
“18BB8”)(102(102 .
"}") (330 . ) (100.“AcDbEntity”)(67.0)(410。
“模型”)(8.2628_浮雕10_LINE_2007_1”)(100。“AcDbPolyline”)(90.14)(70
. 0)(43.0.0)(38.0.0)(39.0.0)(10-24729.8-2.87722e+006)(40.0.0)
(41.0.0)(42.0.0)(91.0)(10-24742.3-2.87722e+006)(40.0.0)(41。
0.0)(42.0.0)(91.0)(10-24761.3-2.87722e+006)(40.0.0)(41.0.0)(42
. 0.0)(91.0)(10-24782.0-2.87722e+006)(40.0.0)(41.0.0)(42.0.0)
(91.0)(10-24813.4-2.87722e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)
(10-24834.7-2.87722e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10)
-24850.2-2.87722e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24872.3)
-2.87723e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24889.9)
-2.87723e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24896.1)
-2.87723e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24906.2)
-2.87723e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24928.2)
-2.87723e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24939.9)
-2.87723e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(10-24970.9)
-2.87722e+006)(40.0.0)(41.0.0)(42.0.0)(91.0)(210.0.0.0 1.0))

marko_ribar 发表于 2022-7-6 07:41:48

正如我所见,这个实体没有注册应用程序“高度”。。。尽管如此,请尝试在DWG中检查所有注册的AppID,因此请执行此代码并在此处复制并粘贴结果:
 

(defun c:appids ( / app )
(setq app (tblnext "APPID" T))
(princ app)
(while (setq app (tblnext "APPID"))
   (terpri)
   (princ app)
)
(princ)
)

Jozi68 发表于 2022-7-6 07:43:36

你好,Marko,我运行了这个,但没有结果。也许我做错了。

marko_ribar 发表于 2022-7-6 07:46:23

加载后,将代码复制并粘贴到CAD界面,或将代码另存为*。lsp文件并用APPLOAD加载它,您会注意到图片中最后一个提示是提示C:APPIDS。。。这意味着代码作为C:(命令函数)加载到内存中。。。您必须在提示符处键入命令:APPIDS并按ENTER键。。。然后,你的文本屏幕(这是你用图片显示的)将显示我希望你复制并粘贴在这里的信息,就像你之前在回复中所做的那样。。。

Jozi68 发表于 2022-7-6 07:51:12

知道了。
以下是我的结果:
命令:APPIDS
((0.APPID)(2.ACAD)(70.0))
((0.APPID)(2.ACAD\u PSEXT)(70.0))
((0.APPID)(2.AcadAnnoPO)(70.0))
((0.APPID)(2.acadanotative)(70.0))
((0.APPID)(2.ACAD\u DSTYLE\u DIMJAG)(70.0))
((0.APPID)(2.ACAD\u DSTYLE\u DIMTALN)(70.0))
((0.APPID)(2.ACAD_MLEADERVER)(70.0))
((0.APPID)(2.ACAD_豁免_遵守_CAD_标准)(70.0))
((0.APPID)(2.acmapdmsDisplayStyleRegapp)(70.0))
((0.APPID)(2.AeccLand70)(70.0))
((0.APPID)(2.AeccUiQTO)(70.0))
((0.APPID)(2.AeccUiQTOEntityPayItemData)(70.0))
((0.APPID)(2.AeccUiQTOPayItemFilePath)(70.0))
((0.APPID)(2.AeccUiQTOPayItemCategoryFilePath)(70.0))
((0.APPID)(2.AeccuiqtofRequisedPayItemsList)(70.0))
((0.APPID)(2.AeccUiQTOPayItemFormulaFilePath)(70.0))
((0.APPID)(2.AeccUiQTOPayItemSpecBookVersionFloridaDOT)(70.0))
((0.APPID)(2.AeccUiQTOPayItemFormulaParameters)(70.0))
((0.APPID)(2.AeccUiQTOPayItemFormulaExpression)(70.0))
((0.APPID)(2.AeccUiQTOTransportDesignerFileFloridaDOT)(70.0))
((0.APPID)(2.AeccUiModel)(70.0))
((0.APPID)(2.ADE)(70.0))
((0.APPID)(2.MapGWS)(70.0))
((0.APPID)(2.DCO15)(70.0))
((0.APPID)(2.AcAecLayerStandard)(70.0))
((0.APPID)(2.AcDbBlockRepETag)(70.0))
((0.APPID)(2.AcDbDynamicBlockGUID)(70.0))
((0.APPID)(2.acauthnenviron)(70.0))
((0.APPID)(2.AcDbDynamicBlockTrueName)(70.0))
((0.APPID)(2.AeccLand80)(70.0))
((0.APPID)(2.AeccUiMgr)(70.0))
((0.APPID)(2.AeccLand90)(70.0))
((0.APPID)(2.ACAD\u NAV\u VCDISPLAY)(70.0))
((0.APPID)(2.AcMap_E615D161-C9D7-11d3-839F-0060B0FB6B57)(70.0))
((0.APPID)(2.IRD)(70.0))
((0.APPID)(2.ADE_投影)(70.0))
((0.APPID)(2.AcPublishKml)(70.0))
((0.APPID)(2.AcCmTransparency)(70.0))

BIGAL 发表于 2022-7-6 07:54:14

也许可以试试看扩展数据是否存在
 
(setq adict (dictsearch (namedobjdict) "ACAD_XDICTIONARY")))
then maybe entity Entity name: 7ffff2f59f0

 
你能发布一个带有一个pline wblock的dwg吗。
页: 1 [2]
查看完整版本: 循环通过多段线