怎么保存尺寸的信息
我想把尺寸保存到excel里,现在我知道怎么和excel进行数据交换,可是尺寸对象所提供的属性没有定位信息,怎么获得尺寸的定位信息,以便使用add方法重现该尺寸,请各位大侠指导! 用vla-add方法所需点位置可用vla-get-property取得,但点位置要转换为浮点值才可保存为文本。注意有部分尺寸对象所需点多,要用entget取得定点位置,并按特定格式写入文本。在用vla-add方法重新创建后,再指定各辅助点位置。 cushi 发表于 2011-11-1 20:38 static/image/common/back.gif用vla-add方法所需点位置可用vla-get-property取得,但点位置要转换为浮点值才可保存为文本。注意有部分尺寸 ...
你说的是不是用尺寸的属性,还是别的方法?
能不能附一点程序,我不太明白 特性值,比如说下面的半径标注尺寸:
;特性值:
; AltRoundDistance = 0.0
; AltSuppressLeadingZeros = 0
; AltSuppressTrailingZeros = 0
; AltSuppressZeroFeet = -1
; AltSuppressZeroInches = -1
; AltTextPrefix = ""
; AltTextSuffix = ""
; AltTolerancePrecision = 3
; AltToleranceSuppressLeadingZeros = 0
; AltToleranceSuppressTrailingZeros = 0
; AltToleranceSuppressZeroFeet = -1
; AltToleranceSuppressZeroInches = -1
; AltUnits = 0
; AltUnitsFormat = 2
; AltUnitsPrecision = 3
; AltUnitsScale = 0.0393701
; Application (RO) = #<VLA-OBJECT IAcadApplication 00b5e51c>
; ArrowheadBlock = "ClosedBlank"
; ArrowheadSize = 2.0
; ArrowheadType = 1
; CenterMarkSize = 0.0
; CenterType = 2
; DecimalSeparator = "."
; DimensionLineColor = 256
; DimensionLineWeight = -1
; DimLineSuppress = 0
; Document (RO) = #<VLA-OBJECT IAcadDocument 0540ecf0>
; Fit = 0
; ForceLineInside = 0
; FractionFormat = 0
; Handle (RO) = "58E7DA"
; HasExtensionDictionary (RO) = 0
; Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 035b2e04>
; Layer = "DIM"
; LeaderLength (RO) = ...不显示带索引的内容...
; LinearScaleFactor = 1.0
; Linetype = "ByLayer"
; LinetypeScale = 1.0
; Lineweight = -1
; Measurement (RO) = 0.5
; Normal = (0.0 0.0 1.0)
; ObjectID (RO) = 2125083856
; ObjectName (RO) = "AcDbRadialDimension"
; OwnerID (RO) = 2130103312
; PlotStyleName = "ByLayer"
; PrimaryUnitsPrecision = 3
; Rotation = 0.0
; RoundDistance = 0.0
; ScaleFactor = 1.0
; StyleName = "Gadim$4"
; SuppressLeadingZeros = 0
; SuppressTrailingZeros = 0
; SuppressZeroFeet = 0
; SuppressZeroInches = 0
; TextColor = 256
; TextGap = 1.0
; TextHeight = 2.5
; TextInside = 0
; TextInsideAlign = 0
; TextMovement = 1
; TextOutsideAlign = -1
; TextOverride = ""
; TextPosition = (37069.0 -900.131 0.0)
; TextPrefix = "3-R"
; TextRotation = 0.0
; TextStyle = "Gatxt"
; TextSuffix = ""
; ToleranceDisplay = 0
; ToleranceHeightScale = 1.0
; ToleranceJustification = 0
; ToleranceLowerLimit = 0.0
; TolerancePrecision = 3
; ToleranceSuppressLeadingZeros = 0
; ToleranceSuppressTrailingZeros = -1
; ToleranceSuppressZeroFeet = -1
; ToleranceSuppressZeroInches = -1
; ToleranceUpperLimit = 0.0
; TrueColor = #<VLA-OBJECT IAcadAcCmColor 035b2280>
; UnitsFormat = 2
; VerticalTextPosition = 0
; Visible = -1
用“vla-get-特性”可以取对应值。 cushi 发表于 2011-11-2 21:13 static/image/common/back.gif
特性值,比如说下面的半径标注尺寸:
;特性值:
; AltRoundDistance = 0.0
正如这个直径标注的例子,虽然可以获得上述的属性,但是直径标注的添加方法
AddDimDiametric(ChordPoint, FarChordPoint, LeaderLength)
这个函数需要直径上的两个点,但是属性里面没有这两个点,只有textposition
ChordPoint
Variant[变体] (三元素双精度数组); 仅用于输入
指定圆或圆弧上第一个直径点的三维WCS坐标。
FarChordPoint
Variant[变体] (三元素双精度数组); 仅用于输入
指定圆或圆弧上第二个直径点的三维WCS坐标。
LeaderLength
Double[双精度]; 仅用于输入
正值代表从 ChordPoint 到注解文字或折线处的长度。
这个需要用到entget函数,取对应的点 cushi 发表于 2011-11-3 22:16 static/image/common/back.gif
这个需要用到entget函数,取对应的点
这个是lisp么
我没有用过
能给段源程序么 (entget (car (entsel)))选任意对象都有该对象的参数显示,所包含的意义在“开发者帮助”里有说明。 cushi 发表于 2011-11-3 22:22 static/image/common/back.gif
(entget (car (entsel)))选任意对象都有该对象的参数显示,所包含的意义在“开发者帮助”里有说明。
那我看看 谢谢 cushi 发表于 2011-11-3 22:22 static/image/common/back.gif
(entget (car (entsel)))选任意对象都有该对象的参数显示,所包含的意义在“开发者帮助”里有说明。
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=66847
页:
[1]