Herhangi bir öneri?

  • Konuyu başlatan Konuyu başlatan Shape
  • Başlangıç tarihi Başlangıç tarihi
Şikayet etmeden ve çalışmadan vazgeçin, sonra size evde yapmak için birçok egzersiz vereceğiz! :biggrin:
Osmosis'e çalışıyorum. Ama çok çalışmak görünmüyor!:
6360757-uomo-contenere-un-bilgisayar-portatile-come-un-tetto-di-casa-isolated-on-beyaz-programmatore-allegro-g.jpg
Ancak, çeşitli "against" vb.net'in yanı sıra biraz daha sert ve küpte dağınık olduğunu söylemek gerekir.
 
Özelliklerini görüntülemek için katmanlara nasıl erişilir:
Kod:
Özel fonksiyon get_layxdata() as array
dim myxdata seri olarak = hiçbir şey
Veritabanı olarak db kullanmak = thisdatabase
tr as autodesk.autocad.databaseservices.transaction = tr_start
Katmantable = tr.getobject (db.layertableid, openmode.forread)
Katmantablerecord = tr.getobject (lt()0, openmode.forread)
Eğer r.xdata <> O zaman hiçbir şey yok
Myxdata = r.xdata.asarray
Sonunda, eğer sona erirse
tr.commit()
Son kullanım kullanımı
Son kullanım kullanımı
Son kullanım kullanımı
Son kullanım kullanımı
Geri dönüş myxdata
end fonksiyonu
Bu özel örnekte xdata'ya "0" katmanına bağlı olarak soruyorum.

Merhaba.
 
Eski bir yazı olduğunu biliyorum ama İtalyan'da çok az belge olduğundan, v.net'in karmaşıklığını vurgulamak istiyorum.
Yazdığımız bir çizgi oluşturmak için vsa ile birlikte:
Kod:
sub addline()
dim ptstr(0 to 2) çift olarak
ptstr = 5: ptstr(1) = 5: ptstr(2) = 0#
dim ptend(0 to 2) çift olarak
ptend = **** 12: ptend (1) = 3: ptend(2) = 0#

" model uzayında bir çizgi nesne oluşturmak
dim lineobj as acadline
Set lineobj = budrawing.modelspace.addline(ptstr, ptend)

Sonunda alt alt
vs.net ile yazmak zorundasınız. .
Kod:
Autodesk.autocad.runtime
Autodesk.autocad.applicationservices
Autodesk.autocad.databaseservices
Autodesk.autocad.geometri

<commandmethod("addline")> _
Public sub addline()
“Mevcut belge ve veritabanı alın
dim doc belge olarak = uygulama.documentmanager.mdiactivedocument
dim acurdb as database = acdoc.database

“Bir işlem başlat
İşlem olarak işlem = curdb.transactionmanager.starttransaction()

“Okumak için blok masası açın
dim beblktbl as blocktable
ablktbl = atrans.getobject (accurdb.blocktableid, openmode.forread)

“Çalış masası kayıt modeli alanı yazmak için açın
dim blktblrecord
ablktblrec = actrans.getobject (acblktbl(blocktablerecord.modelspace)
openmode.forwrite)

“5'te başlayan ve 12,3'te sona erecek bir çizgi oluşturmak
dim aline as line = new line(new point3d(5, 5, 0), yeni nokta3d(12, 3, 0))

aline.setdata basedefaults()

“Yeni nesneyi blok tablo kaydına ekleyin ve işlem
Ablktblrec.appendentity (acline)
atrans.addnewlycreateddbobject (acline, true)

“Yeni nesneyi veritabanına kurtarın
atrans.commit()
Son kullanım kullanımı
Sonunda alt alt</commandmethod("addline")>
Peki?
Bu, daha "kullanıcı" bir dildir.

Her neyse kütüphaneler yapmaya başlıyorum (.dll) nanocad
ms görsel stüdyosunda yazılı ve derlenmiş (free)
Bir ele ihtiyacınız varsa bir ıslık
 
Bazen ağda neden "tüm aynı" kodun birçok örneği olduğunu merak ediyorum.... Şimdi onu nerede gördüğümü hatırlıyorum....

Basit bir çizgiyi vb. içeren bir komut oluşturmak için kod. net veya c# veya f# bu kadar prolisso olmak zorunda değildir

vs.net
Kod:
Autodesk.autocad.runtime
Autodesk.autocad.interop
İthalat uygulaması = autodesk.autocad.applicationservices.application

namespace ac2018_demo
Halk sınıfı Mydemo
 <commandmethod("addline")>Kamu paylaşılan sub addline()
dim acadapplication = ctype(application.acadapplication, acadapplication)
{0, 0, 0}, yeni çift() {10, 10, 0})
Sonunda alt alt
end class
end namespace</commandmethod("addline")>
c#
Kod:
Autodesk.autocad.runtime kullanarak;
Autodesk.autocad.interop kullanarak;
Uygulama = autodesk.autocad.applicationservices.application;

namespace ac2018_demo
{
Halk sınıfı Mydemo
{
 [CommandMethod("AddLine")]Public statik boşluk addline()
{
acadapplication aapp = (acadapplication)application.acadapplication;
app.activedocument.modelspace.addline(Yeni çift[] { 0, 0, 0}, yeni çift[] 10, 10, 0 };
}
}
}
f#
Kod:
open autodesk.autocad.runtime
open autodesk.autocad.interop
open autodesk.autocad.applicationservices

Modül 2018_demo =

tip mydemo() =
 [<CommandMethod("AddLine")>]Statik üye addline() =
Başvuru = uygulama.acadapplication:?> acadapplication
app.activedocument.modelspace.addline(İngilizce).[| 0.0; 0.0; 0.0 |], [| 10.0; 10.0; 0.0 |])
Dikkat !!! Bu kod bir örnek olarak yazılır ve transkripto hataları içerebilir, bir yetişkin varlığında değilse kullanmayın!:roflmao:roflmao:roflmao:roflmao:roflmao:roflmao:roflmao:roflmao:
 

Forum İstatistikleri

Konular
58,521
Mesajlar
499,056
Kullanıcılar
104,110
Son Üye
ChristianR

Çevrimiçi Üyeler

Şu anda çevrimiçi üye yok.
Geri
Üst