prof. leandro taddeo – constructive solid geometry (csg) aula 10
TRANSCRIPT
![Page 1: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/1.jpg)
Prof. Leandro Taddeo
– Constructive Solid Geometry (CSG)
Aula 10
![Page 2: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/2.jpg)
Constructive solid geometry (CSG) é uma técnica utilizada em modelagem de sólidos Geralmente utilizada em computação gráfica
3D CSG permite que o modelador crie objetos
complexos utilizando operadores booleanos para combinar objetos
Facilita a aplicação de operações matemáticas difíceis de serem executadas com malhas poligonais
IntroduçãoCSG
2
![Page 3: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/3.jpg)
Os objetos sólidos mais simples utilizados para representação são chamados de Primitivas Exemplos de primitivas: esfera, caixa,
cilindro, cone Objetos mais complexos podem ser
construídos a partir de primitivas através da aplicação de operadores booleanos Exemplos de operadores: união,
intersecção, diferença
Objetos e OperaçõesCSG
3
![Page 4: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/4.jpg)
A união deve ser utilizada quando se deseja combinar dois objetos em um só
É útil também quando se deseja: Aplicar a mesma textura aos dois objetos Transformar ambos os objetos com um só
comando
Operações – UniãoCSG
4
![Page 5: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/5.jpg)
Operações – UniãoCSG
5
sphere { <0,5,0> 4 texture { T_Glass1 // T_Wood34 } }
cylinder { <0,3,0> <0,0,0> 2 texture { T_Glass1 // T_Wood34 } }
sphere { <0,5,0> 4 texture { T_Glass1 // T_Wood34 } }
cylinder { <0,3,0> <0,0,0> 2 texture { T_Glass1 // T_Wood34 } }
union { sphere { <0,5,0> 4 }
cylinder { <0,3,0> <0,0,0> 2 } texture { T_Glass1 // T_Wood34 }}
union { sphere { <0,5,0> 4 }
cylinder { <0,3,0> <0,0,0> 2 } texture { T_Glass1 // T_Wood34 }}
![Page 6: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/6.jpg)
Operações – UniãoCSG
6
Exemplos sem união
Exemplos com união
![Page 7: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/7.jpg)
A operação de merge deve ser utilizada quando se deseja combinar dois objetos em um só, excluindo as partes dos objetos que ficaram internas
É útil para objetos transparentes Objetos opacos podem ser combinados
com a união, pois é uma operação mais rápida
Operações – MergeCSG
7
![Page 8: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/8.jpg)
Operações – MergeCSG
8
merge { sphere { <0,5,0> 4 }
cylinder { <0,3,0> <0,0,0> 2 } texture { T_Glass1 }}
merge { sphere { <0,5,0> 4 }
cylinder { <0,3,0> <0,0,0> 2 } texture { T_Glass1 }}
union
merge
![Page 9: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/9.jpg)
A operação de diferença deve ser utilizada quando se deseja remover partes de um objeto, cavando formas nele
O primeiro objeto é aquele de onde serão removidas as partes especificadas por outros objetos que vêm a seguir Qualquer parte do objeto original que esteja
dentro dos outros objetos é removida A cor da parte removida fica a mesma do
objeto que a removeu
Operações – DiferençaCSG
9
![Page 10: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/10.jpg)
Operações – DiferençaCSG
10
difference { sphere { <0,5,0> 4 texture { pigment {Red} } } cylinder { <1,6,-4> <-1,4,4> 1.5 texture { pigment {Blue} } } }
difference { sphere { <0,5,0> 4 texture { pigment {Red} } } cylinder { <1,6,-4> <-1,4,4> 1.5 texture { pigment {Blue} } } }
![Page 11: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/11.jpg)
Operações – DiferençaCSG
11
União Diferença
![Page 12: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/12.jpg)
A textura também pode ser aplicada na diferença
Operações – Diferença12
CSG
difference { sphere { <0,5,0> 4 } cylinder { <1,6,-4> <-1,4,4> 1.5 } texture { pigment {Red} }}
difference { sphere { <0,5,0> 4 } cylinder { <1,6,-4> <-1,4,4> 1.5 } texture { pigment {Red} }}
![Page 13: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/13.jpg)
A operação de intersecção captura todos os pontos que estão contidos em todos os objetos especificados
Diferentemente da diferença, a intersecção “joga fora” a partes do objeto que estão fora da intersecção com os objetos seguintes
Operações – Intersecção13
CSG
![Page 14: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/14.jpg)
Operações – Intersecção14
CSG
União
Diferença
Intersecção
![Page 15: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/15.jpg)
Operações – Intersecção15
CSG
intersection { box { <-5,0,0> <0,5,5> texture { pigment {Green} } } sphere { <0,5,0> 3 texture { pigment {Yellow} } } rotate 30*y }
intersection { box { <-5,0,0> <0,5,5> texture { pigment {Green} } } sphere { <0,5,0> 3 texture { pigment {Yellow} } } rotate 30*y }
Pode-se aplicar transformações geométricas diretamente do objeto resultante
![Page 16: Prof. Leandro Taddeo – Constructive Solid Geometry (CSG) Aula 10](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc148497959413d8e1766/html5/thumbnails/16.jpg)
ExercícioCSG
16