drop-cutter:n idea on että valitaan piste (x,y) tasossa ja kuvitellaan että terä on jossain korkealla ylhäällä. Sitten tiputetaan terää z-akselin suuntaisesti alas kunnes se koskettaa mallia.
Malli on kolmioista koostuva (STL-tiedosto), joten terä voi osua joko kolmion kulmapisteisiin, sivuihin, tai pintaan (facet englanniksi, mikä tämä olisi suomeksi)
Joten tarvitaan kolme funktiota jotka laskevat näitä osumakohtia kolmion eri osien kanssa. Näistä olen kirjoittanut blogissani:
http://www.anderswallin.net/tag/drop-cutter/Olen viimeaikoina tullut siihen johtopäätökseen että halukkaita open-source osaajia jotka osaavat C#:ia tai haluavat sillä koodata on liian vähän.
Idea olisi kirjoittaa drop-cutter uusiksi C++ kirjastona jota voisi kutsua esim. Pythonista. Pythonilla voisi sitten tehdä 3D piirtämisen, tiedostojen lukemisen ja kirjoituksen jne.
Minulla on myös suunnitteilla toinen perus-algoritmi jonka nimi on z-slice. Sillä tehdään ns. waterline- ratoja eli sellaisia jossa radan z-koordinaatti on vakio ja terä siirtyy (x,y) tasossa niin että se koko ajan koskettaa mallia.
Näistä rakentunee pikkuhiljaa toimiva CAM kirjasto, mutta kehitysvauhti on melko hiljainen kun ei ole juuri muita koodareita tästä kiinnostunut.