jauni 发表于 2004-3-17 11:08:00

delphi + cad

<FONT face=Tahoma>我使用delphi,有没有同路的?开发了一些程序,主要是应用数据库设计,将sql数据库数据与cad图形联系,做电气设计。例如不同的元件选型而对应的电机保护等。</FONT>

breezer 发表于 2004-5-26 14:02:00

也想用delphi+cad,



能否发一份delphi+cad的框架例子?


<A href="mailto:breezer2003@sohu.com" target="_blank" >breezer2003@sohu.com</A>


3x

zzhg 发表于 2004-6-15 02:45:00

我也想用delphi进行二次开发,发个列子把


<A href="mailto:zengzhigang_0@163.com" target="_blank" >zengzhigang_0@163.com</A>


thanks

pckite 发表于 2004-6-15 08:27:00

我也是刚学,给此简单的例子吧


<A href="mailto:pckite@163.com" target="_blank" >pckite@163.com</A>

fourstone 发表于 2004-6-16 10:47:00

放弃吧,光数据转换中用到variant就够头疼的了

jauni 发表于 2004-7-2 11:01:00

首先谢谢各位支持,出差了好久,邮件一直没有仔细看过。不值各位还有兴趣么。


下面是个简单的例子,抛砖引玉,实际上只要你仔细看acad的help就能做出来了<BR>记得要 uses ComObj


procedure TForm1.Button2Click(Sender: TObject);<BR>var<BR>                       cad,CADDOC:variant;<BR>                       startPoint, endpoint:Variant;<BR>begin<BR>                       cad:=GetActiveOleObject('AutoCAD.Application');<BR>                       cad.visible:=true;<BR>                       caddoc:= cad.activedocument;


                       startPoint:= VarArrayCreate(,5        );<BR>                       startPoint:=0;<BR>                       startPoint:=0;<BR>                       startPoint:=0;


                       endPoint:= VarArrayCreate(,5        );<BR>                       endPoint:=120;<BR>                       endPoint:=120;<BR>                       endPoint:=0;<BR>                       caddoc.ModelSpace.AddCircle(VarArrayRef(startPoint), 25).Update;                               //画个圆<BR>                       caddoc.ModelSpace.AddLine((startPoint),(endpoint));                                                                                                                                               //画条线<BR>                       caddoc.ModelSpace.Addtext('sdgfdag',VarArrayRef(endPoint),20);                                                       //写个字<BR>                       caddoc:=Unassigned;<BR>                       cad:=Unassigned;<BR>end;

bxlander 发表于 2007-2-13 11:39:00

非常 感谢

alin 发表于 2007-2-14 19:55:00

<a href="http://www.caddzone.com/delphi/samples.htm">http://www.caddzone.com/delphi/samples.htm</a>

bantam 发表于 2007-2-15 23:58:00

我用perl实现了

<p>我从前用LISP,快把我搞疯了。所以我想办法将Perl在Cad上搞起来,并响应Cad的对象事件,管理对象。</p><p>我用Perl控制Excel、word,ODBC将各个程序联系起来互通信息。</p><p>我用Perl写动态网页。我的目标是只用Perl就包打天下。用Perl写起程序来是如此顺手。</p><p>例程:</p><p>use Tk;<br/>use strict;<br/>use Win32::OLE qw(EVENTS);<br/>use Win32::OLE::Variant;<br/>$|=1;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>package MyEvent;<br/>use strict;<br/>use Win32::OLE::Variant;<br/>$|=1;<br/>my $status = 0;<br/>my $Handle = 0;</p><p>sub ObjectModified {<br/>&nbsp;if ($status == 1){ <br/>&nbsp;&nbsp;&nbsp; return(0)}<br/>&nbsp;$status = 1;<br/>&nbsp;&nbsp;&nbsp; my ($Obj,$arg) = @_;<br/>&nbsp;my $ModifyObj = $arg-&gt;Value();<br/>&nbsp;print $ModifyObj-&gt;{'ObjectName'} . "\n";<br/>&nbsp;$Handle = $ModifyObj-&gt;Handle();<br/>}</p><p>sub EndCommand{<br/>&nbsp;&nbsp;&nbsp; my ($Obj,$arg) = @_;<br/>&nbsp;my $one = Variant(VT_ARRAY|VT_R8,3);<br/>&nbsp;&nbsp;&nbsp; $one-&gt;Put();<br/>&nbsp;&nbsp;&nbsp; my $two = Variant(VT_ARRAY|VT_R8,3);<br/>&nbsp;&nbsp;&nbsp; $two-&gt;Put();<br/>&nbsp;my $ModifyObj = $Obj-&gt;HandleToObject($Handle);<br/>&nbsp;$ModifyObj -&gt; Move($one,$two);<br/>}</p><p>package main;<br/>$Win32::OLE::Warn = 3;<br/>my $acad = Win32::OLE-&gt;GetActiveObject('AutoCAD.Application.16')<br/>&nbsp;&nbsp;&nbsp; || Win32::OLE-&gt;new('AutoCAD.Application.16'); <br/>&nbsp;$acad-&gt;{'visible'}=1;<br/>my $Documents = $acad-&gt;{'Documents'};<br/>my $Document1 = $Documents-&gt;Item(0); <br/>$Document1-&gt;Activate();<br/>my $moduspace=$Document1-&gt;ModelSpace;<br/>Win32::OLE-&gt;WithEvents($Document1,"MyEvent","_DAcadDocumentEvents");<br/>Win32::OLE-&gt;MessageLoop;<br/></p>

shirazbj 发表于 2007-2-21 18:28:00

这个perl能开发autocad 2007 LT么?
页: [1] 2
查看完整版本: delphi + cad