Forgó kocka Mathcad, elemzés és delphi
Igen, otoydom a téma, és egy elemző delphi ma. Csak egy darab kenyeret.
Miért olyan gyorsan? Például volt egy a 3D-motor delphi. amelyek hagyományos nagyon ilyen hívást. Egyszerűen Központi koordinátákat, és még akkor nem a legjobb megoldás. Most majd többet intelligens, de meg kell tennünk mindent Mathcad. Mi az? Is, mert a programozást.
Először röviden, hogyan kell felhívni vonalszakaszok a grafikon MathCAD: két vektor létrehozásához szükséges az azonos méretű, amely tartalmazni fogja a pontok koordinátáinak, X és Y, illetőleg. És ezek a pontok magát Mathcad csatlakozni szegmenseket, ha ezek a vektorok mutatnak a menetrend. például:
Most képzeljük el, hogy ez a helyzet: van két vonatkoztatási rendszerek három dimenzióban: az első megy, mi mozog a második (lásd alább.) Az is a kocka.
Mi határozza meg a pontok koordinátáinak a kocka:
Ma már szinte éjjel, és nem agy nem jön ki egy ilyen funkció :) Ez lehet könnyebb, már megtette, de a fájl marad a másik számítógépen. Igen, oké. Jelenleg nyolc pontot:
Hozta tisztán látni a végső fájl, ez nem lehet. Most, hogy kösse össze a pontokat, hogy lássuk a széleit a kocka (néhány szegmens ismétlődnek - végezzenek „tiszta” nem fog működni):
Világos? Oké, vissza ebben a sorrendben később, amikor teljesen megjeleníteni az elforgatott kocka. Ahogy emlékszem, ezek a pontok a rendszerben, mely elfordul a bázishoz képest. Mivel van kapcsolva? Igen, persze, a három sarka! Mondjuk tudni mindhárom sarkok, de ahogy vesszük a pontok koordinátái? Ez egyszerű: használja a forgatási mátrix. Három mátrixok: elforgatás révén szögben X-tengely Y tengely és a Z tengely, akkor:
További információ forgatási mátrix olvasni Wikipedia, elvileg mindent egyszerűen jelenik meg. Az utolsó sor a fenti ábra funkció, amely megadja a sugara vektort a kívánt pontot, akkor elegendő, hogy adja meg, és a három szög.
A háromdimenziós térben a pont nyertünk kimeneti lesz? Elég, ha az egyik kiálló például sík 0xy. Most itt az ideje feltenni a két vektor, ahol az egyik a másik után, ami festett én ceruzával az egyik fenti képet, megy x és y koordinátáit pontok:
Optimalizálni a kódot, ha akarja, hogy nekem most lusta. És van valami, hogy optimalizálni kell. Mi kell még animálni: változó képkocka. Nem animáció nulla. Az animáció során - frame számát. Mi ez lesz 1-től 100 Mi határozza meg a törvényeket a sarkok változik az animáció:
Ismételt véletlenszerűen funkció (azaz véletlenszerű, random forgatás szépen). Építeni!
Ez nem túl meggyőző? Fuss az animáció: