Sziasztok,
olyan programot vagy programkönyvtárat keresek, amivel ki lehet számítani 3d térben alakzatok (ellipszoidok, gömbök, egyenesek) metszéspontjait, majd azok koordinátáit. Rengeteget googleztam, és nem találtam olyan nyílt forrású szoftvert, ami ezekre képes.
Kipróbáltam a pygeo-t, de ott ellipszoid nincs, 2d geometriai szoftverekből viszont rengeteg van, csak nekem nem ez kell.
Mit tanácsoltok, ismertek erre konkrét megoldást?
Üdv,
zp.
- 1720 megtekintés
Hozzászólások
Színes-szagos GUI-s csodára ne számíts, viszont programkönyvtáraknak szerintem lenniük kell, ráadásul többnek is. Sajnos most nem tudok konkrétumokat mondani, de kb. egy fél évvel ezelőtt a kezembe akadt egy geometriával, ill. geometriai algoritmusokkal foglalkozó szaklap, na, abban volt minden amit földi halandó el (sem) tud képzelni erről a területről. Sajnos a címére nem emlékszem, csak arra, hogy nekem megtévesztő volt, mivel nem szerepelt benne, hogy geometria, hanem valami "Advanced Computer Graphics" vagy valami hasonló néven futott, de egyébként töményen geometriáról szólt az egész. Ebben láttam egy rakás önálló fejlesztésű programot, vagy hivatkozást rájuk.
Egyébként talán az is lehet, hogy "rossz helyen" keresetél. Nekem sem mindig barátom a Google, ilyenkor érdemes lehet szűkíteni: Sourceforge, freshmeat, stb., megvolt már? Ha az említett folyóiratból indulok ki, akkor érdemes lehet még körülnézni a témával foglalkozó egyetemi tanszékek, kutatóintézetek, stb. oldalain, más területen én már sok hasznos dolgot szedtem össsze ilyen helyekről.
- A hozzászóláshoz be kell jelentkezni
VTK?
- A hozzászóláshoz be kell jelentkezni
Ja, Kitware cuccok!
<-------
You can't grep on dead trees.
- A hozzászóláshoz be kell jelentkezni
Kuvik: köszönöm a tippet, folytatom a keresést.
ez a VTK kicsit zavaros elsőre, de mindenképpen kipróbálom, köszönöm az ötletet!
- A hozzászóláshoz be kell jelentkezni
A VTK egy nagyon jó cucc, csak nem erre való. Adat-utófeldolgozásra és megjelenítésre használható, azaz, ha valamilyen többé-kevésbé szabványos formátumban vannak (numerikus) eredményeid, akkor azokat gyönyörűen meg lehet vele jeleníteni, de az eredeti feladat ezzel még nem oldható meg, ugyanis a felvetett geometriai problémára ezek a képességek nem adnak semmilyen megoldási lehetőséget.
- A hozzászóláshoz be kell jelentkezni
lehet nem egy "varázslós" megoldás, de a kvadratikus felületek (amit írtál példát azok azok) metszéspontjait papíron se túl bonyolult kiszámítani, de ha még nem érettségiztél akkor a legegyszerűbb matekprogramok is megoldják
- A hozzászóláshoz be kell jelentkezni
szia, a problémám ott van, hogy ezekre a számításokra a hobbi-projektemben van szükség, ami egy szoftver lesz, ráadásul valós időben számolná.
- A hozzászóláshoz be kell jelentkezni
Csatlakoznek az elottem szolokhoz, a felmerult problemak egyszeruen, papiron, gyorsan szamolhatoak, ha matrix-vektor formalizmust hasznalsz, akkor kb fejben is. Hobbi-projekthez anno en is csinaltam effe'le'ket (ray tracing, ugy hogy a gorbult alakzatokat kvadratikus felulettel kozelited, igy nem baromisok haromszog kell, hanem keves kvadratikus alakzat, igy szamolni reflexiot, fenytorest, ...); es hat me'g hobbi-projekt szinten is ez, marmint feluletek es egyenesek metszetenek kiszamolasa volt kb. 10-20 sor a 6k-bol, tehat elhanyagolhatoan kicsi problema. A matrix-vektor-stb irasmod nagyon-nagyon sokat segit, az, hogy trafokat nem euler-szogekkel, hanem orthogonalis matrixokkal irsz le, az meg meg tobbet.
A.
- A hozzászóláshoz be kell jelentkezni
arra gondoltam olyan szinten beosztályozod a felületeket, amilyen szinten még átlátod az egyenletrendszerüket, azaz lesz pl egy sík-gömb metszés, aminek tudod hogy a kimenete (akár elfajult, de) kör lesz, tehát ilyesmi alakú:
gömb-sík(xy=a egyenlet, azaz a gömb paraméterei, xy=b egyenlet ,azaz a sík paraméterei){return kör paraméterei, azaz a xy=a,xy=b egyenletrendszer megoldása}
a lényeg hogy ha leegyszerűsíted megfelelően konkrét felülettípusokkra, az egyenleteket paraméteresen papíron könnyű megoldani, tehát esetünkben 4+6 számból (gömb középpont és sugár+sík1pontja és normálvektor pl) kiszámítunk néhány számot amiről tudjuk hogy egy kör paraméterei.
Tudom hogy pont ennek megírásával szeretnél spórolni, de egész biztos hogy ezt hamarabb meg lehet írni mint egy megfelelő libraryszerűséget találni, azon átrágni magad, aztán megfelelően beépíteni, pont ezért nincs ilyen könyvtár, mert ez elég egyszerű feladat ahoz hogy helyben írják meg ((meg persze a konkrét igények mindenhol mások, pl pontosság))
((a szintet úgy értem, hogy ha nagyon benne van az ember lehet egyetlen fv-t írni ami 2 kvadratikus felület bemenetű egy "görbe" kimenetű, stb))
- A hozzászóláshoz be kell jelentkezni
szia, lentebb már írtam, hogy nekiálltam egy saját megvalósításnak, hasonló elven. ott javaban írom meg a logikát, majd egyenletrendszert generálok az alapján, amit bármely cas meg tud oldani. vagy valamit félreértettem?
- A hozzászóláshoz be kell jelentkezni
igen, az "az amit bármely cas megold", na pont azt a megoldást kell beletenned a fv-be
- A hozzászóláshoz be kell jelentkezni
nna, akkor újra:) :
tehát ne a végeredmény legyen egy olyasmi amit beteszel majd casba (és a cas-t a projektedbe), hanem az csak a kód megírásánál a papír-cerúza helyetesítésére szolgáljon
- A hozzászóláshoz be kell jelentkezni
ok, értem, köszönöm.
itt viszont erős kétségeim támadtak a megoldhatóságot illetően, mert pl. olyat szeretnék kiszámolni, hogy "kör (két gömb metszete) és egy ellipszoid metszete".. ez megoldható fv-vel, egyenletrendszer nélkül is?
- A hozzászóláshoz be kell jelentkezni
valamelyikünk asszem nem érti a másikat
mi a különbség gömb-elipszoid és kör-ellipszoid metszet között a te értelmezésedben? az enyémben semmi, m a kör is egy egyenlet, a gömb is, a metszet két egyenlet által alkotott egyenletrendszer megoldása, az hogy fv alatt mit értünk most, az a feladattól függ, tehát hogy egy adott pont (környezete) része-e a metszetnek, vagy futó paraméterekkel legenrálni a metszetet más feladat
azt hogy a fv-el, egyenletrendszerrel ... (nem értem, hogy mire gondolsz, csak tippelek) a fv készítéséhez kell megoldani az egyenletrendszert, (kivéve ha egyfajta tartalmazást, nem legenerálást kell megoldani)
- A hozzászóláshoz be kell jelentkezni
egyébként nem tudom mit jelent az hogy hobby projekt, (szegényes fantáziámmal) két dologra tudok gondolni: az egyik hogy ismerkedsz a programozással v. 3D-vel v. ilyesmi, ez esetben bizony megéri kiszenvedni ezeket a számolásokat (cas-hoz akkor nyúlva ha már elakadtál papíron),
a másik hogy konkrétan a geometriával kapcsolatban érdekel valami olyasmi hogy _végeredmény_, arra pedig egy blender elég lenne, de ez utóbbi valószínűtlenebbnek tünik számomra
ps: a java programod generálhatna egy python szkriptet, amiből blenderrel 3d-s objektumot készítesz, amit már újra a jjava programod úgy használ tovább ahogy szeretnéd :)
- A hozzászóláshoz be kell jelentkezni
Saját definícióm szerint a hobby projekt az az, hogy valami téma érdekel és rákattansz. Nem fizetnek érte viszont nem kötelező eredményt felmutatni sem. Akkor addig csinálod amíg el nem unod vagy a barátnőd (vagy feleség 1.0-ra upgradelt változata), anyukád, munkáltatód kombóból valaki rád nem dörrent hogy most már a "civil" életedben is dolgozni kell. Persze elvileg lányok is olvashatják a fórumot ők a barátnőt értsék a pasijukra.
- A hozzászóláshoz be kell jelentkezni
ha jól értem, egzakt dolgokat szeretnél kiszámítani. ezekre vannak bizonyítottan működő matematikai eljárások. (feltételezem közelítéssel akarsz számolni, ha gyökökkel stb. jelölt pontos értékeket szeretnél, az külön mizéria.)
én ugyan ilyen szoftverről még nem hallottam, de ha esetleg vannak konkrét elképzeléseid, akkor tudom ajánlani mondjuk az mcedit-et és a gcc-t. (btw. ha valakinek van kedve, szívesen beszállnék egy ilyen projekt elkészítésébe, gondolom egyes esetekben ez több embernek jelentene nagy könnyebbséget.)
:: by BRI.
:: config :: Acer TravelMate // Intel Celeron 530 1.73GHz. 533MHz FSB, 1MB L2 // 1GB DDR2 // Mobile Intel GMA X3100 // Ubuntu Hardy
:: tothab [a] gmail [pötty] kom
black rose immortal's weblog
- A hozzászóláshoz be kell jelentkezni
szia, bár nem hiszem, hogy jót tesz vaktában indítani egy nyílt forrású projektet, de én is elgondolkodtam ezen.
én jávában írnám meg úgy, hogy a kapcsolatokból egyenletrendszereket készít, amiket egy beépített cas megoldana. mit szólsz hozzá?
- A hozzászóláshoz be kell jelentkezni
egyáltalán nem vagyok benne biztos, hogy a java a legjobb megoldás, persze attól függ, mennyire akarjuk ábrázolni a dolgokat. végül is attól lenne igazából izgalmas, azt meg tényleg java-s környezetben a legkönnyebb kivitelezni. a térgeometria aritmetikai hátterét rtfmb (read the FINE math book) szinten ismerem, de ahogy átlapoztam egy elemi geometria és egy gömbi geometria könyvet, úgy láttam, nem nagyon van benne olyan számítási algoritmus, amit 1) ne tudnék papíron kiszámolni 2) ne tudna már valamelyik (pl c-ben meghívható) karakteres környezetű program zsigerből megoldani. Szóval én az elméleti részének inkább c-ben (cpp-ban) esnék neki. annyi viszont biztos, hogy a projekthez -- ha akarunk belőle valami értelmes "terméket" gyártani -- még 4-5 emberre szükségünk lesz. apám matematikus-fizikus, szintén lelkes linux-felhasználó, azt mondta, ha ráér, segít.
:: by BRI.
:: config :: Acer TravelMate // Ubuntu Hardy
:: tothab [a] gmail [pötty] kom
:: black rose immortal's weblog
- A hozzászóláshoz be kell jelentkezni
most nincs rá még másfél percem, de nyithatnánk a dolognak egy új topicot "projektek" témában.
:: by BRI.
:: config :: Acer TravelMate // Ubuntu Hardy
:: tothab [a] gmail [pötty] kom
:: black rose immortal's weblog
- A hozzászóláshoz be kell jelentkezni
ha jol ertem csak lazan kapcsolodik, de hatha erdekes - majd eldontod te.
http://www.slu.edu/classes/maymk/MathApplets-SLU.html#Understanding_sur…
- A hozzászóláshoz be kell jelentkezni
a libcgal2-t ismeritek? nem valami ilyesmire való?
- A hozzászóláshoz be kell jelentkezni
most néztem, elvileg a Rhinoceros3D-vel lehet ilyeneket csinálni. zárt forrású és linuxos verzió nincs.
- A hozzászóláshoz be kell jelentkezni