Özet.
Mars Keşif Gezgini'ne baktıktan sonra:http://www.thingiverse.com/thing:10057Uzun zamandır yapmak istediğim bir şeyi OpenScad'da yapmak için ilham aldım.
Bu şey, bazı diziler ve 'rekürsiyon' kullanarak modellerinizi temsil etmek ve oluşturmak için bir tekniktir.
Sadece birkaç rutin tanıtıldı, ama bunlarla esasen şöyle bir şey yapabilirsiniz:
CSG([OP_UNION, [
[PRIM_CYLINDER, [2,2, 8+15+3], sıfır(), sıfır()],
[PRIM_CYLINDER, [4,4, 3], sıfır(), sıfır()],
]]);
Veya, eğer sadece basit bir kısım yapmak istiyorsanız;
place_prim([PRIM_CYLINDER, [2,2, 8+15+3], zero(), zero()]);
Bu dünyayı sallamayan bir şey, ama metin modelleme cephaneliğindeki bir başka araçtır. Modeller ve parçalardaki işlemler basitçe sayı dizileri olarak temsil edildiğinden, bunları veya bunların birleşimini oluşturmak için fonksiyonları kullanabilirsiniz.
Kodun LISP veya diğer dizilişe dayalı biçimlere benzemeye başlaması oldukça ilginç.
En azından, bu başka bir teknik.
OpenSCAD_vm.scad dosyası asıl beyinleri içerir. Tüm rutinlerin bazı test örneklerini gösteren bir 'test_openscad_vm.scad' dosyası vardır. 'mars_rover_vm.scad' dosyası, ilham verici Mars rover projesinden bazı ilginç kısımları alır ve bunları OpenSCAD VM'de kullanıma uygun parçalara d
İnstrüksiyonlar.
1) openscad_vm.scad dosyasını çalışma ortamınıza indirin.
2) Kodunuzda çok sayıda [] kullanarak bir nesne oluşturun.
3) Sevinin!
Not: Bu sürüm hem polihedronu hem de 2D primitifleri desteklemediğinden biraz sınırlıdır. Ancak bunları eklemek oldukça basittir.
Çok ilginç bir yan etki, bir nesnenin OpenScad_VM temsilini bir taşıma mekanizması olarak kullanabilmenizdir! Bu farkındalık benim için derinlik kazanıyor ve hayatımı basitleştiriyor.
태그
모델 소스
