4
วิธีการ raytrace Bezier พื้นผิว?
ฉันลองคำถามนี้ในวิชาคณิตศาสตร์ SEและที่น่าประหลาดใจคำตอบคือ "สมการที่น่ารังเกียจเกินไปเพียงแค่ป้อนฟังก์ชั่นให้กับเครื่องมือค้นหารากตัวเลข" แต่ถ้าคุณพิจารณาตัวเองว่า "ผู้ชายกราฟิก" อย่างฉันและเล่นอย่างกว้างขวางกับ Bezier curves สำหรับงานออกแบบฉันต้องเชื่อว่าสามารถทำได้ดีกว่า มีอัลกอริทึมที่เผยแพร่โดย Kajiya ที่ฉันไม่มีพื้นหลังที่จะเข้าใจ (ซิลเวสเตอร์เมทริกซ์) แต่คำแนะนำที่เกี่ยวข้องกับคณิตศาสตร์คือว่าผลที่ได้คือพหุนาม -18 องศาใน t และคุณยังต้องแก้ ตัวเลข ฉันมีความคิดอื่นที่มีผลที่คล้ายกัน ดังนั้นมันเป็นความฝันที่เต็มไปด้วยท่อหรือเปล่าที่หวังว่าจะสามารถแก้จุดตัดของเรย์ / เบซิเยร์พีชคณิตได้ดังนั้นจึงเป็นไปได้ที่จะเขียนโค้ดอย่างชัดเจนและราบรื่นที่สุด นอกจากนี้วิธีที่เร็วที่สุดในการคำนวณนี้คืออะไร คุณสามารถ "ค้นหา wiggles" เพื่อรับขอบเขตที่แน่นหนา (และเป้าหมาย) สำหรับการจัดสรรซ้ำหรือไม่? หากคุณต้องใช้เครื่องมือค้นหารูทแบบตัวเลข (ถอนหายใจ) จำเป็นต้องใช้คุณสมบัติใดและมีตัวเลือกที่ดีที่สุดสำหรับความเร็วหรือไม่ ความคิดเดิมของฉันเป็นเรื่องเกี่ยวกับการเตรียมความพร้อมสำหรับผิวจำเพาะคล้ายกับการขยายตัวของ Laplace ที่อธิบายไว้ในคำตอบของฉันคำถามคณิตศาสตร์อื่น ๆ เกี่ยวกับรูปสามเหลี่ยม แต่ฉันก็สนใจวิธีการทั่วไปเช่นกัน ฉันแค่คิดว่าการกำหนดชุดของรูปทรงเหมือนกาน้ำชายูทาห์ แต่ฉันจะสนใจวิธีการปรับให้เหมาะสมสำหรับการเชื่อมโยงทางโลกในเฟรมภาพเคลื่อนไหว