乐筑天下

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

Autodesk::Civil:Land::D atabaseServices::SurfaceOperationPasteSurface

[复制链接]

30

主题

125

帖子

30

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
218
发表于 2015-9-15 03:08:06 | 显示全部楼层 |阅读模式
各位同事,大家好!
我有一个问题,如何构建方法“SurfaceOperationPasteSurface”。例如,我想在绘图中选择一个将粘贴到创建曲面中的曲面之后的代码“ExampleTINSurface” 作为代码。我在CivilAPI方面有点新手,没有太多的经验。也许有人可以帮助我。谢谢!
  1.         
  2. [CommandMethod("xx")]
  3.         public void CDS_CreateTinSurface()
  4.         {
  5.             using (tr)
  6.             {
  7.                 string surfaceName = "ExampleTINSurface";
  8.                 // Select a style to use
  9.                 ObjectId surfaceStyleId = civilDoc.Styles.SurfaceStyles[3];
  10.                 // Create the surface
  11.                 ObjectId surfaceId = TinSurface.Create(surfaceName, surfaceStyleId);
  12.                 TinSurface surface = surfaceId.GetObject(OpenMode.ForWrite) as TinSurface;
  13.                
  14.                 tr.Commit();
  15.             }
  16.         }

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

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

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2015-9-15 09:33:21 | 显示全部楼层
surface.PasteSurface(surfToPasteId);
回复

使用道具 举报

30

主题

125

帖子

30

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
218
发表于 2015-9-25 05:26:53 | 显示全部楼层
你好
是的,它很管用-谢谢
回复

使用道具 举报

30

主题

125

帖子

30

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
218
发表于 2015-9-26 06:45:36 | 显示全部楼层
你好!
annybody知道,为什么它不能构建一个新的Civil3d表面,如果在objekt中使用metod
  1. [CommandMethod("create")]
  2.         public void CreateTinSurfaceTest()
  3.         {
  4.             Document m_Doc = Application.DocumentManager.MdiActiveDocument;
  5.             Database db = m_Doc.Database;
  6.             Editor ed = m_Doc.Editor;
  7.             using (Transaction m_Tr = db.TransactionManager.StartTransaction())
  8.             {
  9.                 try
  10.                 {
  11.                     m_SurfaceId = Autodesk.Civil.DatabaseServices.TinSurface.Create(db, "m_NewSurfaceName");
  12.                     m_Surface = m_SurfaceId.GetObject(OpenMode.ForWrite) as TinSurface;
  13.                     ed.WriteMessage("Import succeeded: {0} \n {1}", m_SurfaceId.ToString(), db.Filename);
  14.                 }
  15.                 catch (System.Exception e)
  16.                 {
  17.                     ed.WriteMessage("Import failed: {0}", e.Message);
  18.                 }
  19.                 m_Tr.Commit();
  20.             }
  21.         }

通过键入命令:创建 - 它>表面工作“m_NewSurfaceName”会创建
但是如果我从class-object调用metod
  1. public NewSurface()
  2.         {
  3.             Surface newSurf = new Surface();
  4.             newSurf.CreateTinSurfaceTest();
  5.         }

我只得到错误消息“未能创建”
有人知道一个技巧,我如何以另一种方式
创建表面
回复

使用道具 举报

30

主题

125

帖子

30

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
218
发表于 2015-9-29 09:51:45 | 显示全部楼层
解决了!
http://forums.autodesk.com/t5/net/opening-a-civil-3d-drawing-for-edit-in-c-net/td-p/5490349/page/2
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-5 00:02 , Processed in 0.351254 second(s), 62 queries .

© 2020-2025 乐筑天下

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