View Categories

Bileşik Bölgeler Oluşturma Hakkında (VBA/ActiveX)

1 dakika okuma

Bölgeleri veya 3 boyutlu katı cisimleri çıkararak, birleştirerek veya kesişimlerini bularak bileşik bölgeler oluşturabilirsiniz.

Ardından, karmaşık katı cisimler oluşturmak için bileşik bölgeleri dışa doğru uzatabilir veya döndürebilirsiniz. Bileşik bir bölge oluşturmak için şunu kullanın:Mantıksalyöntem.

Bir bölgeden diğerini çıkardığınızda, buna “bir bölge” dersiniz.Mantıksalİlk bölgeden gelen yöntemi kullanın. Bu, çıkarmak istediğiniz bölgedir. Örneğin, bir kat planı için ne kadar halı gerektiğini hesaplamak için, şu yöntemi kullanın:MantıksalZemin alanının dış sınırından başlayarak, sütunlar ve tezgahlar gibi halısız alanları Boolean parametre listesindeki nesne olarak kullanın.

Bölgeler üzerinde gerçekleştirilen işlem, Boolean metodunun BooleanType parametresi tarafından belirlenir. BooleanType parametresi aşağıdakilerden biri olabilir:

  • kesişim– Bir kesişim işlemi gerçekleştirir.
  • Çıkarma– Çıkarma işlemi gerçekleştirir.
  • acUnion– Sendikalı bir operasyon gerçekleştirir.

Birleşik bir bölge oluşturun #

Sub Ch4_CreateCompositeRegions () ' İki daire oluşturun, biri odayı temsil etsin, 
  
  ' Diğeri odanın ortasında
   bir sütun. Dim RoomObjects ( 0 To 1 ) As AcadCircle Dim center ( 0 To 2 ) As Double Dim radius As Double 
  center ( 0 ) = 4 
  center ( 1 ) = 4 
  center ( 2 ) = 0 
  radius = 2 # Set RoomObjects ( 0 ) = ThisDrawing . ModelSpace . AddCircle ( center , radius ) 
  radius = 1 # Set RoomObjects ( 1 ) = ThisDrawing . ModelSpace . AddCircle ( center , radius )     
      
          
      
     

  'İki daireden bir bölge oluşturun
  Soluk bölgeler Varyant olarak
  bölgeler = ThisDrawing.ModelSpace.AddRegion(RoomObjects)

  ' Kullanım kolaylığı için bölgeleri bölge değişkenlerine kopyalayın Dim RoundRoomObj As AcadRegion Dim PillarObj As AcadRegion 
     
     

  Eğer bölgeler ( 0 ).Alan > bölgeler ( 1 ) .Alan ise , 'Birinci bölge odadır'  
    
    RoundRoomObj = regions(0) değerini ayarla
    PillarObj = regions(1) olarak ayarla
  Başka
    ' İlk bölge sütun Set PillarObj = regions ( 0 ) Set RoundRoomObj = regions ( 1 ) End If   
      
   

  'Direk boşluğunu taban alanından çıkarın'
  ' Toplam halı alanını temsil eden bir bölge elde edin . RoundRoomObj . Boolean acSubtraction , PillarObj 
   

  'Toplam halı alanını belirlemek için Alan özelliğini kullanın'
  MsgBox "Halı alanı: " & RoundRoomObj.Area
Son Alt Yordam

Oluşan bölgenin alanını aşağıdaki formülle bulun.Alanmülk.

Tarafından desteklenmektedir BetterDocs

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir