乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 117|回复: 8

民用 3D 管道斜坡

[复制链接]

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-21 03:58:45 | 显示全部楼层 |阅读模式
当我从民用3d管道中抓住斜坡时,它不包括“-”符号。 管道设置为 -2%,但 pipe.slope 显示 .02000000000
任何人都知道获得正确值的方法吗?我试图检查管道之间的偏转角度,负极是关键。

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

238

主题

769

帖子

33

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1721
发表于 2015-8-21 07:01:48 | 显示全部楼层
通常我们只需手动翻转或旋转管道从开始结构到结束结构。或者您可以使用菜单中的更改流动方向。选择最上游的结构,然后选择您想要它去的最后一个结构。
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2015-8-21 11:53:53 | 显示全部楼层
外星人,你是怎么利用斜坡的?我有依赖于符号的代码,它工作得很好。你能展示一些代码吗?
回复

使用道具 举报

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-23 04:46:41 | 显示全部楼层
谢谢杰夫, 这是我使用的代码,我需要看看管道中的垂直挠度是否大于1度,但如果它不能判断管道的斜率在轮廓中实际上是上升还是下降,那对我没有任何好处。 ObjectId part1oid = BeProprompts.promptForpropart(“\nSelect First Pipe:”);。
ObjectId part2oid = BeProprompts.promptForpropart(“\nSelect Second Pipe:”);。
Autodesk.Civil.DatabaseServices.Entity ent1 = MyTrans.GetObject(part1oid, OpenMode.ForRead) as Autodesk.Civil.DatabaseServices.Entity;。
Autodesk.Civil.DatabaseServices.Entity ent2 = MyTrans.GetObject(part1oid, OpenMode.ForRead) as Autodesk.Civil.DatabaseServices.Entity;。
管道 1 = 空;。
管道 2 = 空;。

如果 (ent1.GetType() == typeof(ProfileViewPart))。
{。
ProfileViewPart part = part1oid,GetObject(Autodesk.AutoCAD.DatabaseServices.OpenMode.ForRead) as ProfileViewPart;。
Autodesk.AutoCAD.DatabaseServices.Entity entity1 = part.ModelPartId.GetObject(Autodesk.AutoCAD.DatabaseServices.OpenMode.ForRead) as Autodesk.AutoCAD.DatabaseServices.Entity;。
如果 (实体 1.GetType() == typeof(Pipe))。
{。
管道 1 = (管道)实体 1;。
}。
}。

如果 (ent2.GetType() == typeof(ProfileViewPart))。
{。
ProfileViewPart part2 = part2oid,GetObject(Autodesk.AutoCAD.DatabaseServices.OpenMode.ForRead) as ProfileViewPart;。
Autodesk.AutoCAD.DatabaseServices.Entity entity2 = part2,ModelPartId.GetObject(Autodesk.AutoCAD.DatabaseServices.OpenMode.ForRead) as Autodesk.AutoCAD.DatabaseServices.Entity;。
如果(实体 2.GetType() == typeof(Pipe))。
{。
管道 2 = (管道)实体 2;。

}。
}。

双斜率 1 = 管道 1,坡度;。
MyEditor.WriteMessage(“\n” + slope1.ToString());。
双斜率 2 = 管道 2,坡度;。
MyEditor.WriteMessage(“\n” + slope2.ToString());。
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2015-8-23 11:19:00 | 显示全部楼层
奇怪的是,我有一些代码用于使用ProfileViewParts测试其他东西,我只是稍微修改了一下以获得管道斜率。请注意,我得到了签名斜率:这是代码:[命令方法("TestPVParts")]。
公共无效测试部件()。
{。
文档文档=Application.DocumentManager.MdiActiveDocument;。
编辑doc.Editor。
数据库db=doc.Database;。
PromptEntityOptions entOpts=new PromptEntityOptions("\nSelect ProfileView:");。
entOpts.SetRejectMessage("...不是分析对象,重试!");。
entOpts.AddAllowedClass(typeof(ProfileView), true);。
PromptEntityResult entRes=ed.GetEntity(entOpts);。
如果(entRes.Status!=PromptStatus.OK)。
返回;。
使用(事务tr=db.TransactionManager.StartTransaction())。
{。
pv=(ProfileView)entRes.ObjectId.GetObject(OpenMode.ForRead);。
ObjectId[]pvParts=pv.GetProfileViewPartIds();。
foreach(pvParts中的ObjectId id)。
{。
ProfileViewPart pvpart=(ProfileViewPart)id.GetObject(OpenMode.ForRead);。
管道=pvpart.ModelPartId.GetObject(OpenMode.ForRead)作为管道;。
如果(管道==null)。
继续;。
ed.WriteMessage("\nPipe\"{0}\"Slope={1}",pipe.Name,pipe.Slope.ToString ());。
}。
tr.Commit();。
}。
}。

回复

使用道具 举报

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-23 23:44:41 | 显示全部楼层
谢谢!不知道怎么回事。我想我会检查所有的端到端交易和标签,以确保它们是正确的。
其次,是pv。GetProfileViewPartIds()15/16的新东西?
回复

使用道具 举报

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-24 01:27:44 | 显示全部楼层
没关系...我想我明白了:
http://forums.autodesk.com/t5/autocad-civil-3d-customization/can-everybody-select-profileviewpart-next-to-if-i-have-selected/td-p/5687146
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2015-8-24 09:27:08 | 显示全部楼层
哦,很抱歉!我忘记了创建该扩展方法。顺便说一句,Slope 属性始终从头到尾报告坡度,而不管流向设置为什么。
回复

使用道具 举报

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-25 02:59:05 | 显示全部楼层
谢谢杰夫!就这样。不得不翻转管道。非常感谢。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-5 00:49 , Processed in 0.176238 second(s), 70 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表