| 480 | } |
| 481 | |
| 482 | void Patch::updateTesselation(bool force) |
| 483 | { |
| 484 | // Only do something if the tesselation has actually changed |
| 485 | if (!_tesselationChanged && !force) return; |
| 486 | |
| 487 | _tesselationChanged = false; |
| 488 | |
| 489 | if (!isValid()) |
| 490 | { |
| 491 | _mesh.clear(); |
| 492 | _localAABB = AABB(); |
| 493 | return; |
| 494 | } |
| 495 | |
| 496 | // Run the tesselation code |
| 497 | _mesh.generate(_width, _height, _ctrlTransformed, subdivisionsFixed(), getSubdivisions(), _node.getRenderEntity()); |
| 498 | |
| 499 | updateAABB(); |
| 500 | |
| 501 | _node.onTesselationChanged(); |
| 502 | } |
| 503 | |
| 504 | void Patch::invertMatrix() |
| 505 | { |
no test coverage detected