SolidWorks机械工程师网——最大的SolidWorks学习平台

标题: 如何实现一个曲线,总长不变,而两端随位置变化? [打印本页]

作者: rainbow-dl    时间: 2009-8-5 18:00
标题: 如何实现一个曲线,总长不变,而两端随位置变化?
如何实现一个曲线,总长不变,而两端随位置变化?如下图

也就是如果拖动曲线的端点,R15的圆位置会变化,上面的线加长多少,下边的线就减少多少!
作者: liwenping    时间: 2009-8-5 18:00
将R固定,将上下两条直线设置为与圆弧相切和水平,给出标注出上面两条直线的长度,然后添加方程式(我这里设置为上面的线长加上下面先线的长度为100)方程式为如下  
"D2@草图1"=100-"D3@草图1"   
注意:D2@草图1是选择的尺寸
希望你成功,本想贴图给你,但是我贴不上。
作者: pzliang    时间: 2009-8-5 18:01
另外在注明,不能托动,只能更改尺寸,另一条线的尺寸就会跟着变化。
作者: 放飞    时间: 2009-8-5 18:01
谢谢!
我这样做就是想拖动时,能够自动变化!
这个目的就是做拖链的!基本已经实现,就是上下两条线中,驱动的那个线标注尺寸时作为从动,然后就可以拖动了,但拖动后再生时总长就不是设置的那个数了,不知为什么?
另外方程中能不能加上条件判断?
作者: qyinxiang    时间: 2009-8-5 18:02
让构造线与上水平线等长,再用尺寸100控制两段水平线的总长度。

作者: 冰河之花    时间: 2009-8-5 18:03
楼上的是用的等长加尺寸控制,而楼主的意思是全部的线设置为固定的长度,我认为只能用函数
作者: ypzhou    时间: 2009-8-5 18:04
楼主所提到将尺寸设置为从动后,就不是设置的数了,因为函数不对从动尺寸有效。   如果楼主想拖动尺寸没有必要将尺寸设置为从动,直接设置尺寸随拖动修改,就可以拖动已经标注的尺寸了。  
如果带有要包括圆弧的长度在内,不要忘记圆弧的长度写入公式例如:
"D3@草图1" = 200-"D1@草图1"- ( 180*3.1415926*"D2@草图1"/180 )
注:总长为200。一条直线的长度为公式缩写内容。

作者: lili2725    时间: 2009-8-5 18:04
五楼的方法能够实现,就是要先计算好构造线的长度!
使用方程总是不能满足要求,长度能够变化,但却好象不受方程的控制!
(我猜测,这个方程设置方法可能不正确,因为这种关系最后好象变成了叠代关系,比如上面的线长减少了50,这时下边的要加长50,加长50后,圆的位置也要随着变化,这时上边的线因为约束,也要变化,就再次引起了方程的变化,最后造成结果不正确)
有没有更好的解决办法呢?
作者: 情義永恆    时间: 2009-8-5 18:04
经过多次试验,方程式是有效的,按照7楼的方法做,能达到效果
作者: delna    时间: 2009-8-5 18:07
如果楼主想拖动尺寸没有必要将尺寸设置为从动,直接设置尺寸随拖动修改,就可以拖动已经标注的尺寸了。
请问如何设置“直接设置尺寸随拖动修改”?
谢谢!
作者: nanqing333    时间: 2009-8-5 18:08
在工具--草图设定里面--尺寸随拖动/移动修改
作者: xueqit    时间: 2009-8-5 18:08
看来很多人关心实体怎么建,没有人关注线条怎么建立了~~~
本贴可作为一案例,请求版主置顶
作者: 月明934    时间: 2009-8-5 18:09
我被楼主弄糊涂了, 其实楼主在楼顶的要求已经万分明确,有以下几条
1、半圆半径不变,
2、上下直线之和不变
3、必须可以随意拖动
可见上下直线的单独长度是不固定的,随着拖动过程其长度自然形成。我不排除用方程来做,但所谓方程就是要给出一个上端点的位置(这是楼主的要求)求出上下直线的长度。现在看到的方程法,是以一根直线的长度来求另一根直线的长度,这和楼主说的“拖动曲线的端点”还是有差别的。而我在5楼的做法,用了一个极简单的上直线与构造线相等的约束,只要标注一个上下直线的总长(如图中的100),自然保证了楼主的要求,并不需要经过楼主说的“先计算好构造线的长度”的步骤,你只要随意移动上直线端点的位置,自然会满足你的要求,难道这样不更简单吗?
再说这类问题的提出,一般是在实际产品中有一个可拖动的柔性零件(相信楼主的问题与此类似),甚至希望实现动画拖动,如果用我在5楼的办法,只要将端点与一个拖动的零件建立一个重合约束,不要任何计算,一切自动完成。所以说,这种动态建模的方法早就是大家熟知的方法了。
作者: zfkbit    时间: 2009-8-5 18:12
我看不老的解答已经完全解决了楼主的问题,楼主怎么还不现身!
作者: cqzhjx    时间: 2009-8-5 18:12
学习了,大家研究得很深呀
作者: 25dwt9mwce    时间: 2009-8-5 18:15
学习了,大家研究得很深呀,不老问题研究得最深了
作者: thfeng    时间: 2009-8-5 18:17
其实最后还是按w_hs1的方法解决的问题!
只是“先计算好构造线的长度”我的意思是总长确定了,要定义下边线+构造线的长度,还是要计算一下的(总长-圆弧长,虽然比较简单,但还是要计算一下)!
另外就是方程法中,能不能再方程中加入条件判断,使用w_hs1的方法时,有时会出现拖动超过极限位置,这时会造成不正确的结果!有没有好的办法?
再此谢谢各位的热情帮助!
作者: huashi388    时间: 2009-8-5 18:18
不错的问题,学到东西了
作者: bofan8687    时间: 2009-8-5 18:19
w_hs1的解答完全适合了楼主的问题中心内容,而且最为简单实用,
受教了。
作者: xiaoqiuhong    时间: 2009-8-5 18:19
根据顶楼题意我以为足下只要控制上下直线的长度之和,现在如要求控制曲线总长,那么只要在总长中加入一段长度等于半圆长的线段就行,此线段尺寸的输入直接输“15*pi”以免产生误差。
如要控制两端极限位置,只要加一根长度和位置恰当的样条曲线(如下图)就可以了,你将无法将曲线端点拖出范围之外。

作者: xlfuture    时间: 2009-8-5 18:20
不解:1.加入“15*pi”的虚线似乎对曲线没有约束啊?
2.“无法将曲线端点拖出范围之外”虽然有默认的竖直关系,但还是拖得动!
作者: kgdia    时间: 2009-8-5 18:22
1、前面已经讲过,下面另一条虚线有与上面一条实线相等的约束。
2、上面那条是直的样条曲线,不是直线,所以没有延伸功能,因此上面那个与样条曲线重合的点不可能移出样条曲线范围,自然曲线端点也就不能移出极限位置。这种方法已多次使用过,绝无问题。
作者: flanker    时间: 2009-8-5 18:22
这个我记着好像问过了吧
作者: lanyu00    时间: 2009-8-5 18:23
竟然能想出这种办法,真的是绝了!
谢谢!
作者: solide1    时间: 2009-8-5 18:23
电缆拖链用这种方式建模是不得已的选择
一旦做成实体或装配体后就没法随着拖动变化了
作者: cbjlhh    时间: 2009-8-5 18:24
大家都是能人,仁者见仁智者见智啊
作者: za502    时间: 2009-8-5 18:26
本人愚笨还是没有想明白是怎么回事情!请教详细的图解!
作者: axz6    时间: 2009-8-5 18:26
学习了,大家研究得很深呀,不老问题研究得最深
作者: raky    时间: 2009-8-5 18:28
谢谢大侠  我学会了
作者: cn318000    时间: 2009-8-5 18:28

经典之言
作者: nieweiguo    时间: 2009-8-5 18:28
竟然能想出这种办法,真的是绝了!
作者: zhou_cb21    时间: 2009-8-5 18:29
5楼的最直观,方程式在做动画的时候也能表达出来




欢迎光临 SolidWorks机械工程师网——最大的SolidWorks学习平台 (https://www.swbbsc.com/) Powered by Discuz! X3.2