Civil 3D 中使用COM API导入DEM数据创建曲面

简介:


Civil 3D提供的基于.net的API和基于COM的API,现在推荐大家使用.net API,但有时也需要使用COM API。 这个例子演示如何使用COM API来导入DEM数据生成Civil 3D曲面。 Civil 3D开发中使用COM API需要添加的引用比较啰嗦,建议使用向导创建项目简化操作,向导能帮助你添加大部分引用,如果还缺什么,自己再添加就简单多了。注意使用COM API,需要勾选AutoCAD 和Civil 3D的interOp相关引用。

 

imageimage

下面是使用COM API导入DEM数据的代码:

// (C) Copyright 2013 by Autodesk 
//

using System;
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.EditorInput;
using System.Windows.Forms;
using Autodesk.AECC.Interop.UiLand;
using Autodesk.AutoCAD.Interop;
using
Autodesk.Civil.ApplicationServices;


// This line is not mandatory, but improves loading performances
[assembly: CommandClass(typeof(LoadDEM_demo.MyCommands
))]

namespace
LoadDEM_demo
{


   
public class MyCommands
    {
 


       
// COM objects:
        private Autodesk.AutoCAD.Interop.IAcadApplication m_oAcadApp = null
;
       
private Autodesk.AECC.Interop.UiLand.IAeccApplication m_oAeccApp = null
;
       
private Autodesk.AECC.Interop.UiLand.IAeccDocument m_oAeccDoc = null
;
       
private Autodesk.AECC.Interop.Land.IAeccDatabase m_oAeccDb = null
;
       
string m_sAcadProdID = "AutoCAD.Application"
;
       
string m_sAeccAppProgId = "AeccXUiLand.AeccApplication.10.0"; //Civil 3D 2013
        //string m_sAeccAppProgId = "AeccXUiLand.AeccApplication.9.0"; //Civil 3D 2012
        private string m_sMessage = ""
;


        [
CommandMethod("LoadDemSurfaceop"
)]
       
public void
LoadDemSurface()
        {

           
try
            {
               
OpenFileDialog ofd = new OpenFileDialog
();
                ofd.Filter =
"USGS DEM( *.DEM) |*.dem|GEOTIFF(*.tif)|*.tif|ESRI ASCII 栅格(*.asc)|*.asc|ESRI ASCII 栅格(*.txt)|*.txt|ESRI 二进制栅格(*.adf)|*.adf"
;
                ofd.FilterIndex = 0;
               
if (ofd.ShowDialog() == DialogResult
.OK)
                {
                   
//use COM
                    m_oAcadApp = (IAcadApplication)System.Runtime.InteropServices.Marshal
.GetActiveObject(m_sAcadProdID);
                   
if (m_oAcadApp != null
)
                    {
                        m_oAeccApp = (
IAeccApplication
)m_oAcadApp.GetInterfaceObject(m_sAeccAppProgId);
                        m_oAeccDoc = (
IAeccDocument
)m_oAeccApp.ActiveDocument;

                        m_oAeccDoc.Surfaces.ImportDEM(ofd.FileName);
                    }

                    m_oAeccDoc.Regen(Autodesk.AutoCAD.Interop.Common.
AcRegenType
.acActiveViewport);


                }
               
else
                {

                }
            }
           
catch (System.Exception
e)
            {
               
MessageBox
.Show(e.Message);
            }
           
finally
            {

            }
        }
      
  


    }

}

作者: 峻祁连
邮箱:junqilian@163.com 
出处: http://junqilian.cnblogs.com 
转载请保留此信息。




本文转自峻祁连. Moving to Cloud/Mobile博客园博客,原文链接:http://www.cnblogs.com/junqilian/archive/2013/01/29/2881124.html ,如需转载请自行联系原作者
相关文章
|
4月前
|
JSON 缓存 算法
如何通过API获取1688商品类目数据:技术实现指南
1688开放平台提供alibaba.category.get接口,支持获取全量商品类目树。RESTful架构,返回JSON数据,含类目ID、名称、层级等信息。需注册账号、创建应用并授权。请求需签名认证,QPS限10次,建议缓存更新周期≥24小时。
459 2
|
4月前
|
JSON 安全 API
亚马逊商品列表API秘籍!轻松获取商品列表数据
亚马逊商品列表API(SP-API)提供标准化接口,支持通过关键词、分类、价格等条件搜索商品,获取ASIN、价格、销量等信息。采用OAuth 2.0认证与AWS签名,保障安全。数据以JSON格式传输,便于开发者批量获取与分析。
|
4月前
|
JSON 监控 API
小红书笔记评论API:一键获取分层评论与用户互动数据
小红书笔记评论API可获取指定笔记的评论详情,包括内容、点赞数、评论者信息等,支持分页与身份认证,返回JSON格式数据,适用于舆情监控、用户行为分析等场景。
|
5月前
|
供应链 监控 安全
1688商品详情API接口实战指南:合规获取数据,驱动B2B业务增长
1688商品详情API(alibaba.product.get)是合规获取B2B商品数据的核心工具,支持全维度信息调用,助力企业实现智能选品、供应链优化与市场洞察,推动数字化转型。
|
4月前
|
数据采集 JSON API
微店API使用指南:高效获取商品列表数据
本文介绍如何使用Python爬虫调用微店item_search接口,根据关键词搜索商品并获取商品列表数据,涵盖请求方式、JSON数据解析、分页参数设置及筛选排序功能,适用于电商数据分析与竞品研究。
|
4月前
|
JSON API 数据格式
淘宝拍立淘按图搜索API系列,json数据返回
淘宝拍立淘按图搜索API系列通过图像识别技术实现商品搜索功能,调用后返回的JSON数据包含商品标题、图片链接、价格、销量、相似度评分等核心字段,支持分页和详细商品信息展示。以下是该API接口返回的JSON数据示例及详细解析:
|
4月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
4月前
|
自然语言处理 算法 数据可视化
看球总刷比分?好奇数据哪来的?你该认识一下「体育API」了
体育API是赛事数据的“幕后搬运工”,实时同步比分、赛程、球员统计等信息,支撑各类应用提供精准推送、深度分析与互动体验,让观赛更智能高效。
482 150
|
4月前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
5月前
|
JSON 前端开发 API
如何调用体育数据足篮接口API
本文介绍如何调用体育数据API:首先选择可靠服务商并注册获取密钥,接着阅读文档了解基础URL、端点、参数及请求头,然后使用Python等语言发送请求、解析JSON数据,最后将数据应用于Web、App或分析场景,同时注意密钥安全、速率限制与错误处理。
634 152