Tämmöinen mietitytti. Oletetaan, että pystyisin saamaan tietoon jonkun kaupungin eri paikkojen koordinaatit ja korkeustiedot merenpinnasta. Voinko tehdä helposti yhtälön, joka approksimoisi maanpinnan korkeutta myös muissa pisteissä semmoisessa muodossa, että kaupungin korkeudesta voisi piirtää 3D-kuvan tyyliin https://doc.sagemath.org/html/en/reference/plot3d/sage/plot/plot3d/implicit_plot3d.html ?
Korkeuden approksimointi
Tyhmä3D
488
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 4
Vanhimmat
Yksinkertaisinta olisi käyttää kolmioverkkoa. Alue jaetaan kolmiohin, joiden kärkipisteiden (x,y,z)-koordinaatit tunnetaan. Kolmion alue approksimoidaan kärkipisteiden kautta kulkevalla tasolla.
Jos perustana on neliöverkko, niin jaetaan kukin neliö kahtia lävistäjällä, jolloin saadaan kolmiointi.
Tuo onnistuu aivan millä tahansa kehittyneellä CAD-ohjelmistolla, jossa on pinnan sovittaminen pistepilveen. Sen jälkeen pintojen piirtäminen on helppoa.
Et helposti. Yksinkertaisin tapa on yllä Kelmiön esittämä. Oleellista on, mitä vaatimuksia pinnalle asetetaan. Kolmiomallissa syntyy teräviä vakoja ja harjoja, kun käytännössä laaksot ja kukkulat ovat tasaisempia. Jos haluaa mahdollisimman "tasaisen" sovitteen, on käytettävä harmonista kompleksifunktiota, menee melko vaativaksi. Käytännössä tason 2. asteen spline-interpolaatiolla saa hyvin tasaisen tuloksen. Senkin ohjelmointi edellyttää kohtalaista matematiikan tajua. Ehkä kannattaisi tutkia josko valmisohjelmistoista olisi apua, kuten yllä on esitetty.
Olen itse aikoinani askaroinut splinien kanssa sen verran, että tiedän tarvittavan matematiikan etenkin pistepilviin sovittamisen osalta olevan sen verran vaativaa, että asiaan saa perehtyä viikkoja, vaikka tarvittavat matemaattiset menetelmät ja ohjelmointi olisivatkin hallussa.
Kuukkelointi termeillä "surface fitting point cloud", antaa varmaan paljon lisätietoa ja ehkä myös ohjelmistoja.