shyshy0916 发表于 2007-10-28 18:00:00

如何获取CAD多段线各顶点坐标

如何获取CAD各顶点坐标呢?<br/>本人一直在试,一直未获成功,心情异常沉重,肯请各位老兄给予指点!!<br/><br/>

sunny2008 发表于 2008-3-19 09:17:00

<p>论坛上有这个方面的资料,建议查询一下</p>

azjmjsj 发表于 2008-3-19 20:52:00

本帖最后由 作者 于 2008-3-19 20:53:25 编辑 <br /><br /> <p>给你个可输出polygon多段线节点的小程序(适用于AutoCAD 2004)</p>

cctv2cctv 发表于 2008-3-20 14:25:00

<p class="Heading-2">语法 </p><p class="syntax">object.Coordinate(index) </p><p class="element">object</p><p class="element-desc"><a href="http://www.mjtd.com/object/acad2004/idh_3dpoly_object.htm">3DPoly</a>, <a href="http://www.mjtd.com/object/acad2004/idh_leader_object.htm">Leader</a>, <a href="http://www.mjtd.com/object/acad2004/idh_lightweightpolyline_object.htm">LightweightPolyline</a>, <a href="http://www.mjtd.com/object/acad2004/idh_polyfacemesh_object.htm">PolyfaceMesh</a>, <a href="http://www.mjtd.com/object/acad2004/idh_polygonmesh_object.htm">PolygonMesh</a>, <a href="http://www.mjtd.com/object/acad2004/idh_polyline_object.htm">Polyline</a>, <a href="http://www.mjtd.com/object/acad2004/idh_solid_object.htm">Solid</a>, <a href="http://www.mjtd.com/object/acad2004/idh_trace_object.htm">Trace</a><br/>使用该属性的对象。 </p><p class="element">Coordinate</p><p class="element-desc">Variant[变体] (三元素或两元素双精度数组); 可读写<br/>指定顶点的 X、 Y 和 Z 坐标的数组。 <br/><br/>LightweightPolyline 对象:变体为两元素,它表示 OCS 坐标系统下的 X 和 Y 坐标。 <br/>Polyline 对象:: 变体为三元素,它表示 OCS 坐标系统下的 X 和 Y 坐标。而 Z 坐标在变体中有预留但被忽略。 <br/><br/>所有其它对象:变体为三元素,它表示 WCS 坐标系统下的 X 和 Y 坐标;而 Z 坐标在活动 UCS 上默认为 0。 </p><p class="element">Index</p><p class="element-desc">Integer[整数]<br/>在顶点数组中你所要设置或查询的顶点的索引号。顶点数组的基数为 0。 </p><p class="Heading-2">说明 </p><p class="body">该属性将替换指定对象任何存在的顶点。使用标准的数组处理技术来处理包含在该属性中的值。 </p><p class="body">3DPolyline, Polyline, PolygonMesh: 对于简单的多段线 (非样条化或曲线拟合),该属性指的是一般的顶点。对于样条化或曲线拟合的多段线,该属性指的是控制点顶点。 </p><p class="body">Polyline 和 LightweightPolyline 对象的 OCS 坐标可以使用 <a href="http://www.mjtd.com/object/acad2004/idh_translatecoordinates.htm">TranslateCoordinates</a> 方法与其它坐标系统进行转换。<script language="javascript" src="ac.acad_mc.js"></script>
        </p><p class="element"><table width="100%" border="0"><tbody><tr><td width="100%"><p><a href="http://www.mjtd.com/" target="_blank">明经通道</a> &copy;2000-2006 版权所有 不得复制传播&nbsp; <br/>该拷贝仅用于明经通道网站在线服务使用,如需要购买,请联系本站管理员:mccad,邮件地址:<a href="mailto:mccad@mjtd.com">mccad@mjtd.com</a></p><p></p><pre class="Code">Sub Example_Coordinate()
    ' This example creates a polyline in model space and
    ' queries and changes the coordinate in the first index position.
      
    Dim plineObj As AcadPolyline
    Dim points(0 To 14) As Double
   
    ' Define the 2D polyline points
    points(0) = 1: points(1) = 1: points(2) = 0
    points(3) = 1: points(4) = 2: points(5) = 0
    points(6) = 2: points(7) = 2: points(8) = 0
    points(9) = 3: points(10) = 2: points(11) = 0
    points(12) = 4: points(13) = 4: points(14) = 0
      
    ' Create a lightweight Polyline object in model space
    Set plineObj = ThisDrawing.ModelSpace.AddPolyline(points)
    ZoomAll
   
    ' Find the coordinate in the first index position
    Dim coord As Variant
    coord = plineObj.Coordinate(0)
    MsgBox "The coordinate in the first index position of the polyline is: " &amp; coord(0) &amp; ", " _
      &amp; coord(1) &amp; ", " &amp; coord(2)
   
    ' Change the coordinate
    coord(0) = coord(0) + 1
    plineObj.Coordinate(0) = coord
    plineObj.Update
   
    ' Query the new coordinate
    coord = plineObj.Coordinate(0)
    MsgBox "The coordinate in the first index position of the polyline is now: " &amp; coord(0) &amp; ", " _
      &amp; coord(1) &amp; ", " &amp; coord(2)
   
End Sub</pre></td></tr></tbody></table></p>

cctv2cctv 发表于 2008-3-20 14:27:00

<p>明经中文通道里搜Coordinate</p><p><a href="http://www.mjtd.com/object/acad2004/">http://www.mjtd.com/object/acad2004/</a></p>

tnt123688 发表于 2010-4-29 19:55:00

谢谢啊

兰州人 发表于 2010-5-1 16:56:00

<p>一定要注意这两种多段线的定义.</p><p>&nbsp; Dim pl As AcadPolyline<br/>&nbsp; Dim ppl As AcadLWPolyline</p><p><br/></p>

znnxj 发表于 2010-7-6 12:36:00

谢谢哈!

wawbt 发表于 2010-8-30 08:08:00

这个有实用价值。下来学习了。

lonlat 发表于 2010-9-19 17:34:00

<p>多谢了,正需要这样的东西。</p>
页: [1] 2
查看完整版本: 如何获取CAD多段线各顶点坐标