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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

好品数字
好品数字
查看: 1033|回复: 31
打印 上一主题 下一主题

如何实现一个曲线,总长不变,而两端随位置变化?

[复制链接]

77

主题

289

帖子

160

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
473
QQ
跳转到指定楼层
楼主
发表于 2009-8-5 18:00:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
如何实现一个曲线,总长不变,而两端随位置变化?如下图

也就是如果拖动曲线的端点,R15的圆位置会变化,上面的线加长多少,下边的线就减少多少!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享教程|习题|模型|技巧 点赞点赞20437 拍砖拍砖1614
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

16

主题

223

帖子

46

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
294
QQ
沙发
发表于 2009-8-5 18:00:16 | 只看该作者
将R固定,将上下两条直线设置为与圆弧相切和水平,给出标注出上面两条直线的长度,然后添加方程式(我这里设置为上面的线长加上下面先线的长度为100)方程式为如下  
"D2@草图1"=100-"D3@草图1"   
注意:D2@草图1是选择的尺寸
希望你成功,本想贴图给你,但是我贴不上。
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

10

主题

256

帖子

36

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
310
QQ
板凳
发表于 2009-8-5 18:01:09 | 只看该作者
另外在注明,不能托动,只能更改尺寸,另一条线的尺寸就会跟着变化。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

246

帖子

53

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
316
QQ
地板
发表于 2009-8-5 18:01:23 | 只看该作者
谢谢!
我这样做就是想拖动时,能够自动变化!
这个目的就是做拖链的!基本已经实现,就是上下两条线中,驱动的那个线标注尺寸时作为从动,然后就可以拖动了,但拖动后再生时总长就不是设置的那个数了,不知为什么?
另外方程中能不能加上条件判断?
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

210

帖子

29

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
263
QQ
5#
发表于 2009-8-5 18:02:39 | 只看该作者

   经典案例图书
让构造线与上水平线等长,再用尺寸100控制两段水平线的总长度。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

14

主题

219

帖子

26

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
260
QQ
6#
发表于 2009-8-5 18:03:35 | 只看该作者
楼上的是用的等长加尺寸控制,而楼主的意思是全部的线设置为固定的长度,我认为只能用函数
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

241

帖子

16

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
278
QQ
7#
发表于 2009-8-5 18:04:12 | 只看该作者

   经典案例图书
楼主所提到将尺寸设置为从动后,就不是设置的数了,因为函数不对从动尺寸有效。   如果楼主想拖动尺寸没有必要将尺寸设置为从动,直接设置尺寸随拖动修改,就可以拖动已经标注的尺寸了。  
如果带有要包括圆弧的长度在内,不要忘记圆弧的长度写入公式例如:
"D3@草图1" = 200-"D1@草图1"- ( 180*3.1415926*"D2@草图1"/180 )
注:总长为200。一条直线的长度为公式缩写内容。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

11

主题

207

帖子

31

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
251
8#
发表于 2009-8-5 18:04:35 | 只看该作者
五楼的方法能够实现,就是要先计算好构造线的长度!
使用方程总是不能满足要求,长度能够变化,但却好象不受方程的控制!
(我猜测,这个方程设置方法可能不正确,因为这种关系最后好象变成了叠代关系,比如上面的线长减少了50,这时下边的要加长50,加长50后,圆的位置也要随着变化,这时上边的线因为约束,也要变化,就再次引起了方程的变化,最后造成结果不正确)
有没有更好的解决办法呢?
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

10

主题

189

帖子

27

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
225
QQ
9#
发表于 2009-8-5 18:04:59 | 只看该作者
经过多次试验,方程式是有效的,按照7楼的方法做,能达到效果
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

13

主题

222

帖子

29

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
283
QQ
10#
发表于 2009-8-5 18:07:24 | 只看该作者
如果楼主想拖动尺寸没有必要将尺寸设置为从动,直接设置尺寸随拖动修改,就可以拖动已经标注的尺寸了。
请问如何设置“直接设置尺寸随拖动修改”?
谢谢!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

205

帖子

23

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
240
QQ
11#
发表于 2009-8-5 18:08:15 | 只看该作者
在工具--草图设定里面--尺寸随拖动/移动修改
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

239

帖子

25

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
276
QQ
12#
发表于 2009-8-5 18:08:46 | 只看该作者
看来很多人关心实体怎么建,没有人关注线条怎么建立了~~~
本贴可作为一案例,请求版主置顶
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

8

主题

214

帖子

13

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
227
13#
发表于 2009-8-5 18:09:46 | 只看该作者
我被楼主弄糊涂了, 其实楼主在楼顶的要求已经万分明确,有以下几条
1、半圆半径不变,
2、上下直线之和不变
3、必须可以随意拖动
可见上下直线的单独长度是不固定的,随着拖动过程其长度自然形成。我不排除用方程来做,但所谓方程就是要给出一个上端点的位置(这是楼主的要求)求出上下直线的长度。现在看到的方程法,是以一根直线的长度来求另一根直线的长度,这和楼主说的“拖动曲线的端点”还是有差别的。而我在5楼的做法,用了一个极简单的上直线与构造线相等的约束,只要标注一个上下直线的总长(如图中的100),自然保证了楼主的要求,并不需要经过楼主说的“先计算好构造线的长度”的步骤,你只要随意移动上直线端点的位置,自然会满足你的要求,难道这样不更简单吗?
再说这类问题的提出,一般是在实际产品中有一个可拖动的柔性零件(相信楼主的问题与此类似),甚至希望实现动画拖动,如果用我在5楼的办法,只要将端点与一个拖动的零件建立一个重合约束,不要任何计算,一切自动完成。所以说,这种动态建模的方法早就是大家熟知的方法了。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

10

主题

223

帖子

24

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
264
QQ
14#
发表于 2009-8-5 18:12:01 | 只看该作者
我看不老的解答已经完全解决了楼主的问题,楼主怎么还不现身!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

8

主题

195

帖子

21

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
241
QQ
15#
发表于 2009-8-5 18:12:12 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

学习了,大家研究得很深呀
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

12

主题

228

帖子

29

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
257
16#
发表于 2009-8-5 18:15:22 | 只看该作者

   经典案例图书
学习了,大家研究得很深呀,不老问题研究得最深了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

234

帖子

14

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
261
QQ
17#
发表于 2009-8-5 18:17:34 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

其实最后还是按w_hs1的方法解决的问题!
只是“先计算好构造线的长度”我的意思是总长确定了,要定义下边线+构造线的长度,还是要计算一下的(总长-圆弧长,虽然比较简单,但还是要计算一下)!
另外就是方程法中,能不能再方程中加入条件判断,使用w_hs1的方法时,有时会出现拖动超过极限位置,这时会造成不正确的结果!有没有好的办法?
再此谢谢各位的热情帮助!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

13

主题

212

帖子

24

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
259
QQ
18#
发表于 2009-8-5 18:18:18 | 只看该作者

   经典案例图书
不错的问题,学到东西了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

12

主题

261

帖子

29

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
312
QQ
19#
发表于 2009-8-5 18:19:21 | 只看该作者
w_hs1的解答完全适合了楼主的问题中心内容,而且最为简单实用,
受教了。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

17

主题

245

帖子

76

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
331
QQ
20#
发表于 2009-8-5 18:19:34 | 只看该作者
根据顶楼题意我以为足下只要控制上下直线的长度之和,现在如要求控制曲线总长,那么只要在总长中加入一段长度等于半圆长的线段就行,此线段尺寸的输入直接输“15*pi”以免产生误差。
如要控制两端极限位置,只要加一根长度和位置恰当的样条曲线(如下图)就可以了,你将无法将曲线端点拖出范围之外。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭 卷起
关闭 卷起

手机版|小黑屋| GMT+8, 2024-5-14 00:24 , Processed in 0.204124 second(s), 40 queries .

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表