逐步通过子实体lis
我希望创建一个与txt标签的有效关联,该标签当前描述长度,具有适当的三个顶点多段线。多段线的中点和文本标签“插入点”相同。命令:
((-1 . ) (0.“多段线”)(330。)(5.“2B6”)(100.“AcDbEntity”)(67.0)(410.“Model”)(8.“HALCON_8000_LATERALS”)(100.“AcDb2dPolyline”)(66.1)(10.0.0.0.0)(70.0)(40.118.75)(41.118.75)(210.0.0.01.0)(71.0)(72.0)(73.0)(74.0)(75.0))
((-1 . ) (0.“顶点”)(330。)(5.“2C8”)(100.“AcDbEntity”)(67.0)(410.“Model”)(8.“HALCON_8000_LATERALS”)(100.“AcDbVertex”)(100.“AcDb2dVertex”)(10 3.54891e+006 1.02421e+007 0.0)(40.118.75)(41.118.75)(42.0)(91.0)(70.0)(50.0))
((-1 . ) (0.“顶点”)(330。)(5.“2C9”)(100.“AcDbEntity”)(67.0)(410.“Model”)(8.“HALCON_8000_LATERALS”)(100.“AcDbVertex”)(100.“AcDb2dVertex”)(10 3.55227e+0061.02387e+007 0.0)(40.118.75)(41.118.75)(42.0.0)(91.0)(70.0)(50.0))
((-1 . ) (0.“顶点”)(330。)(5.“2CA”)(100.“AcDbEntity”)(67.0)(410.“Model”)(8.“HALCON_8000_LATERALS”)(100.“AcDbVertex”)(100.“AcDb2dVertex”)(10 3.55564e+0061.02354e+007 0.0)(40.118.75)(41.118.75)(42.0.0)(91.0)(70.0)(50.0))
((-1 . ) (0.“Sequend”)(330)(5.“2CB”)(100.“AcDbEntity”)(67.0)(410.“Model”)(8.“HALCON_8000_支路”)(-2.)
((-1 . ) (0.“文本”)(330)(5.“2D3”)(100.“AcDbEntity”)(67.0)(410.“Model”)(8.“HALCON\u LATERALS\u 8000\u FEET\u TXT”)(100.“AcDbText”)(103.55127e+006 1.02398e+007 0.0)(40.200.0)(1.“9500”LATERAL 810”)(50.5.50074)(41.1.0)(51.0.261799)(7.“AB”)(71.0)(72.1)(11 3.55227e+006 1.02387e+007 0.0)(210 0.0 1.0)(100.“AcDbText”)(73.1)
命令:
我了解如何查看多段线子实体顶点的DXG代码和文本字符串的DXF代码,但缺乏逐步浏览多段线子实体列表、隔离或将第二个顶点(assoc 10)分配给变量,然后创建与适当文本字符串(assoc 11)的所需关联的知识。
我的目标是浏览一个DWG文件,该文件将多个水平井分支描述为三顶点多段线及其伴随的文本标签,然后修改每个文本标签以包括每个多段线的entityhandle。实体句柄用作唯一标识符,我将其导出到variousExcel文件。
我有一个基本的lisp例程,允许我选择一条折线,即适当的文本字符串,然后将折线的实体句柄添加到“选定”文本字符串。但我想创建一个由多段线和文本字符串组成的选择集,并使用更高级的程序循环并正确修改DWG文件中的选择集,而无需通过用户输入单独选择每个多段线和文本字符串。
在这个问题上的任何启示都将受到极大重视。 与其尝试以编程方式将每个迭代文本实体与其对应的迭代曲线实体配对,为什么不简单地创建一个选择集,在迭代选择集一次时,删除任何文本实体,并根据曲线实体的句柄创建新的文本实体?
如果确实想使其具体化,可以有条件地迭代选择集,将每个选择集存储到单独的列表中(一个用于文本,另一个用于曲线),然后在进一步处理之前比较每个列表的长度。
页:
[1]