Ubuntu Suomen keskustelualueet

Ubuntun käyttö => Multimedia ja grafiikka => Aiheen aloitti: teele - 30.10.26 - klo:11.31

Otsikko: Openscad-ongelma, erotus näyttää toimivan vain toiseen suuntaan
Kirjoitti: teele - 30.10.26 - klo:11.31


Tein kaksi yksinkeratista tasomuotoa, mutta en millään saa erotusta toimimaan suunttan, jossa venytetyt ympyrät pitäisi vähentää monikulmiosta.

Alla olevassa koodissa erotus koe2 - koe1 ei näytä toimivan, enkä keksi, missä menee väärin. Kommentoitu erotus näyttäisi jättävän erotuksen huomiotta.

Koodia: [Valitse]

module koe1(r1, r2, t1, q1)
{
 translate([r1-1*r2, q1*r2+t1, 0])
 scale([1,q1,0])
 circle(r2);
}

module koe2(r1, r2, t1, q1)
{
  polygon([ [0, 0], [r1, 0], [r1, q1*2*r2], [0, q1*2*r2] ]);
}
 
/* 
difference()           // tämä ei näytä toimivan, vain monikulmio näkyy, ympyrää ei vähennetty
{
  koe2(40, 6, 2, 2); 
  koe1(40, 6, 2, 2);
}
*/

difference()        // tämä toimii
{
  koe1(40, 6, 2, 2); 
  koe2(40, 6, 2, 2);
}

Otsikko: Vs: Openscad-ongelma, erotus näyttää toimivan vain toiseen suuntaan
Kirjoitti: SuperOscar - 30.10.26 - klo:11.53
Nelikulmio on kolmiulotteinen, kun taas soikio kaksiulotteinen ja sijaitsee XY-tasolla. Taitaa käydä niin, että soikio kyllä leikkaa nelikulmion, mutta koska nelikulmio jatkuu Z-suunnassa kumpaankin suuntaan, 0-ulotteinen ”leikkaus” jää sen sisälle. Kokeile antaa soikiolle paksuutta (Z-ulottuvuutta) vaikka reilustikin yli nelikulmion.