命令包括:
单挑梁12
光束24
和
beam12m用于选择集拾取
梁24m
;;CAB版本1.0 01/19/09;;模式为单选或多选(defun beamdivide(slen spick/ent len ss i mintdist)(vl load com)(defun addtext(ent slen/cnt)(setq len(vlax curve getdistatparam ent(vlax curve getendparam ent)))(if(>len(*2 slen))(progn(setq mintdist(*2 12));螺柱cnt(/(+(-len mintdist)0.0001)slen)距离末端至少12英寸;为舍入误差cnt(fix(1+cnt))cpt(vlax curve getpointatdist(/len 2))添加模糊ang(角度'(0)(vlax curve getFirstDeriv ent(vlax curve getParamAtPoint ent cpt));;===========================;;如果需要,调整角度以定位文本;;==============================(如果(和(>ang(*0.5 pi))(90和 太棒了!!如果可能的话,只需要一个小特威克。
例如,如果在12“o.c.下使用螺柱,如果我的梁长8’-0”,则数量为7,这是正确的。但是如果我有一个梁的长度,比如说7'-6“,它给了我6个螺柱的数量,而实际上应该是7。
也许如果横梁超过7英尺3英寸这样的平脚印,它可能会在它得出的总数中增加1? 我想你需要在梁的两端保持12”的最小距离? 我附上了另一张图,说明绿线代表螺柱。我想澄清一下这可能会有帮助。。。螺柱从管线末端开始12“,但它们之间的距离必须至少为12”或24“,因此,当你有一个7'-6“的梁时,应注明7个螺柱。
螺柱示例2。图纸 试试这个,修正后的公式。
;;CAB版本1.1 01/19/09;;模式为单选或多选(defun beamdivide(slen spick/ent len ss i mintdist)(vl load com)(defun addtext(ent slen/cnt)(setq len(vlax curve getdistatparam ent(vlax curve getendparam ent)))(if(>len(*2 slen))(progn(setq mintdist(*2 12));螺柱cnt(/(+(-len mintdist)0.0001)slen)的最小距离为12英寸;为舍入误差cnt(fix(+cnt 1.99))cpt(vlax curve getpointatdist(/len 2))添加模糊ang(角度'(0)(vlax curve getFirstDeriv ent(vlax curve getParamAtPoint ent cpt));;===========================;;如果需要,调整角度以定位文本;;==============================(如果(和(>ang(*0.5 pi))(90和 驾驶室,
我几乎总是很难把文字放在一行上。
原因是,通常情况下,无论我多么努力,文本都是颠倒的。
我通常检索直线的起点和终点,然后使用(角度stpt enpt)检索两点之间的角度,但显然,如果从左到右而不是从右到左绘制直线,则该角度将不同。
你似乎通过使用线的一阶导数的向量来获取角度,这确实非常聪明。
这是否总是在一个方向上定义,无论线是以何种方式绘制的(如果有意义的话?)。?
干杯
李 不,我使用它的原因是为了适应普林斯,它将给出该段的角度。
确定文本方向的方法是使用角度校正代码。
;;==========================================;;如果需要,调整角度以定位文本;;==============================(如果(和(>ang(*0.5 pi))(90和 啊,我现在明白了-谢谢你。 真 的。。。完全正确,效果很好!!
谢谢你不知道你为我节省了多少时间。 不客气。
页:
1
[2]