User Tools


ทรงกลม (Sphere)

ทรงกลมแบบสามมิติ รูปทรงเหมิือนลูกบอล ที่ทุกจุดของพื้นผิวทรงกลมจะมีความห่างจากจุดศูนย์กลาง (รัศมี) เท่ากันจากจุดศูนย์กลาง

ทรงกลม

คุณสามารถศึกษาเพิ่มเติมเกี่ยวกับทรงกลมได้ที่ MathIsFun.com

การสร้างทรงกลม จะเป็นการสร้างแบบนับจากจุดศูนย์กลางของทรงกลม โดยมีตัวแปรรัศมี (radius) จะเป็นตัวกำหนดขนาดของทรงกลม และค่าความละเอียด (resolution หรือ fn หากเขียนในรูปแบบภาษา JavaScript) จะเป็นตัวกำหนดจำนวนของพื้นผิวในแต่ละแถวที่อยู่บนทรงกลมที่จะสร้างทรงกลมให้ครบทั้ง 360 องศา โดยค่าต่ำสุดที่สามารถใส่ได้สำหรับค่า fn คือ 4 แต่ถ้าจะให้ได้เหมือนรูปทรงกลม จะเป็นค่าที่มากกว่า 12 ขึ้นไป

ค่าปริยาย:

  • radius : 1 or [1,1,1]
  • center : [0,0,0]
  • resolution : Resolution3D (12)
sphere(1);
sphere({r: 2});                    // หมายเหตุ: center: true คือค่าปริยาย (แตกต่างจาก Primitives อื่นๆ ใน OpenSCAD)
sphere({r: 2, center: true});     // หมายเหตุ: OpenSCAD ไม่รองรับการตั้งค่า center สำหรับ Sphere แต่สำหรับ OpenJSCAD รองรับ
sphere({r: 2, center: [false, false, true]}); // การตั้งค่า center สำหรับแต่ละแกน X,Y,Z 
sphere({r: 10, fn: 100 });
sphere({r: 10, fn: 100, type: 'geodesic'});  // การตั้งค่าทรงกลมให้เป็นแบบจีออเดสิก (geodesic) ที่เป็นโครงข่ายแบบสามเหลี่ยม

ในกรณีที่ตั้งค่าให้ ``type: 'geodesic'`` การกำหนดค่า fn ควรเป็นการกำหนดแบบขั้นบันไดทีละ 6 (ตัวอย่างเช่น fn=6..11 จะมีผลเท่ากัน) การกำหนดค่า fn จึงควรเป็นแบบนี้ คือ 6, 12, 18, 24 …

คุณสามารถใช้ฟังก์ชันของไลบรารี่ CSG ในการสร้างทรงกลมได้ดังนี้ (หมายเหตุ: ไม่สามารถใช้ได้ใน API รุ่นที่ 2)

CSG.sphere({
  center: [0, 0, 0],
  radius: 2,    // ต้องเป็นค่าสเกลาร์
  resolution: 128
});