Beste allemaal,
Het wordt stil op de TeX-NL lijst. Ik denk dat inmiddels vrijwel iedereen is overgestapt naar Stack Exchange en dergelijke.
Ik wil graag gebruik maken van de expertise van de TeX-NL lijst.
Wat wil het geval: ik ben bezig met een soort hobby-project omtrent ray tracing. De aanpak is als volgt: de geometrische objecten zijn:
- platte vlakken, beschreven met vergelijking ax + by + cz - d = 0- kwadratische oppervlakken (bol., cylinder, ellipsoide, etc), met vergelijking ax^2 + by^2 + cz^2 + dxy + exz + fyz + gx + hy + iz - d = 0
Nou zou ik graag een grafische representatie van die geometrische objecten maken. Als voorbeeld: stel, je definieert een cylinder evenwijdig aan de z-as, dan geeft dat een cirkel in het x-y vlak. Dus dan zou ik graag op de een of andere manier die cirkel tekenen.
OK: het tekenvlak is een plat vlak, bijvoorbeeld het x-y vlak, of het x-z vlak; noem dit vlak P, dan is de taak om de doorsneden te bepalen van de geometrische objecten met vlak P. Dat worden dan ofwel rechte lijnen (doorsnede van P met een ander vlak), of het worden kwadratische krommen (cirkel, ellips, parabool, hyperbool, ...).
De doorsnede met P is een kwadratische vergelijking. Je kan die classificeren (cirkel, ellips, etc), en dan parametriseren. Met die parametrisatie kan je dan daadwerkelijk de doorsnede gaan tekeken met de computer.
Mijn vraag is: heeft iemand een goed voorstel voor een programmeertaal om dit soort werk in te doen?
Ik programmeer in Python, dus het is meest aantrekkelijk om Python te gebruiken. Ik heb gekeken naar:
- matplotlib: dat is toch voornamelijk om grafieken te maken. Ik denk dat matplotlib kan doen wat ik wil, maar het is Een Hoop Gedoe
- PyX: Python software om 2D en 3D graphics te exporteren naar PS, SVG, PDF, etc. Dat lijkt ook wel te kunnen wat ik wil maar is ook Een Hoop Gedoe.
- PSFile: een Python library om direct post-script te produceren. Dat lijkt een hele goede oplossing (in numerieke software wordt PSPLOT ook nog veel gebruikt), maar dan moet je wel eerst PostScript gaan leren.
- Asymptote: dat lijkt interessant, maar dan ruil je in feite de ene programmeertaal in voor de andere (hetzelfde argument geldt voor Sketch....)
- PostScript: misschien de beste oplossing, maar ik spreek geen woord PS.... dus dat is lastig om mee te beginnen.
- PGF/TikZ..... mwa.... dat is niet heel geschikt om wiskundige vergelijkingen te gebruiken....
- Gnu Octave: net als matplotlib, het kan (denk ik) wel wat ik wil, maar ook hier geldt dat het meer bedoeld is om grafieken te maken
Ik heb ook zitten denken aan iets als VTK, en dan visualiseren met ParaView.....
Op zich is het niet zo heel moeilijk om de krommen als vergelijkingen te schrijven; het classificieren is ook niet moeilijk; het parametriseren is meestal ook nog wel te doen; maar wat is nou handige software om 2D krommen een beetje fatsoenlijk op een A4 te zetten? Let wel, het kan om honderden, zo niet duizenden krommen gaan, dus iets als PGF/TikZ is denk ik uitgesloten. Is METAPOST iets?
Groeten,Wilfred