| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4994 人关注过本帖
标题:[讨论]关于AUTOCAD二次开发
只看楼主 加入收藏
swgzj
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-5-27
收藏
 问题点数:0 回复次数:5 
[讨论]关于AUTOCAD二次开发
本人最近接到任务,需要基于AUTOCAD二次开发一个软件,但是我对这个不太了解,以前没做过,所以想问几个问题
1、开发工具选择VC6。0还是VC。NET,
2、开发这个使用的ARX包是免费的吗?是不是和VC的版本有关系,和选择的AUTOCAD版本有关系吗?
3、应该查找哪些相关的资料
希望高手指点
搜索更多相关主题的帖子: AUTOCAD 开发 软件 任务 
2006-05-27 01:05
swgzj
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-5-27
收藏
得分:0 
怎么没人回答啊,我还想问一下目前选择的话选择什么版本的ARX比较合适啊
ARX FOR AUTOCAD2007 是最新的,
2006-05-27 13:33
yuze1980
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-1-6
收藏
得分:0 

开发cad2007的ARX程序需要用.NET2005


email:yuze1980@
2007-05-23 20:23
边城路人
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 
这么久了都没人问津
还有人回阿

当你开始怀疑自己时,说明你已经失去了判断力
2007-05-23 20:36
yuze1980
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-1-6
收藏
得分:0 

1、VC++6.0只能开发CAD 2002以前的版本。
VS2002.net可以开发CAD2004~2006版本。
VS2005.net可以开发CAD2007版本。
2、ObjectARX是AUTOdesk免费提供的,可以到其网站下载。
常用组合如下:
VC++6.0 + ObjectARX2000。
VS2002.net+ ObjectARX2004~ObjectARX2006。
VS2005.net+ ObjectARX2007。
3、ObjectARX相关资料很少,不过在网上还是能找到几本的。有一本叫做 ObjectARX2000编程指南 比较不错。


email:yuze1980@
2007-05-24 23:16
雪域藏金
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2011-12-16
收藏
得分:0 
求助:c#与AutoCad2004问题
以下代码是在AUTOCAD2004下的VBA代码

''''''选择集
Public Sub MySelet()
  Dim FilterType(0) As Integer
  Dim FilterData(0) As Variant


  Dim Mssname As String
  Mssname = "temp"
  Dim sset As AcadSelectionSet
  
   On Error Resume Next
   
  Set sset = ThisDrawing.SelectionSets.Add(Mssname)
  If Err Then
    Set sset = ThisDrawing.SelectionSets.Item(Mssname)
  End If
  On Error GoTo 0
  
  FilterType(0) = 0: FilterData(0) = "LWPOLYLINE"
  sset.Clear
  

  sset.SelectOnScreen FilterType, FilterData
  
  If sset.Count > 0 Then
    Set Ment = sset(0)
    MsgBox "选择线:" & sset.Count & "条"
  Else
    MsgBox "没有选线"
  End If
End Sub






下面是C#中实现类似功能的代码:

using System;
using System.Collections.Generic;
using System.Text;
using AutoCAD;
using System.Runtime.InteropServices;

using System.Windows.Forms;



namespace ZZXACAD
{
    public class MyAcad
    {
        const string progID = "AutoCAD.Application.16";

        AcadApplication acApp;

        AcadDocument acDoc = null;

        private string acadFile;






    public int MySelet(string sName)
        {
            int []  FilterType = new int[1] { 0 };
            object[] FilterData = new object[1] { "LWPOLYLINE" };

            

            AcadSelectionSet sset = null;
            try
            {

                sset = acDoc.SelectionSets.Add(sName);
            }
            catch
            {
                sset = acDoc.SelectionSets.Item(sName);
            }


            sset.Clear();

   


            try
            {
                sset.SelectOnScreen((object)FilterType, (object)FilterData);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "errr");
            }
            return sset.Count;
        }
    }



}

}





C#代码“sset.SelectOnScreen((object)FilterType, (object)FilterData);”为什么总出现错误:参数FilterType(位于SelectOnScreen中)无效。”

恳请请大侠们指点迷经!

2011-12-17 22:26
快速回复:[讨论]关于AUTOCAD二次开发
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043495 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved