Ellipse primitive.
More...
|
| | SDFEllipse2 (const Vector2 &, const double, const double) |
| | Create an ellipse2.
|
|
virtual | ~SDFEllipse2 () |
| | Destructor.
|
| double | Signed (const Vector2 &) const |
| | Compute the signed Euclidean distance function.
|
| QString | GetShader (PrimitiveManager &, std::list< QString > &, bool &) const |
| | Compute the GLSL code to render the node.
|
| virtual int | Memory () const |
| | Return the size of a sub-tree.
|
|
virtual SDFNode2 * | Copy () const |
| | Deep copy.
|
| | SDFEuclidean2 () |
| | Create an Euclidean primitive.
|
|
virtual | ~SDFEuclidean2 () |
| | Destructor.
|
|
| SDFPrimitive2 () |
| | Create a primitive.
|
|
virtual | ~SDFPrimitive2 () |
| | Destructor.
|
| virtual QString | GetCostShader (PrimitiveManager &, std::list< QString > &, bool &) const |
| | Compute the GLSL code to compute the cost of a call to sdf.
|
| virtual void | ComputeCostSigned (const Vector2 &) |
| | Compute the number of reccursive calls to Signed().
|
| | SDFNode2 () |
| | Create a generic node.
|
|
virtual | ~SDFNode2 () |
| | Destructor.
|
| virtual Vector2 | Gradient (const Vector2 &) const |
| | Compute the gradient of the field.
|
| virtual bool | Inside (const Vector2 &) const |
| | Check if a point is inside or outside.
|
| virtual void | SetShaderId (PrimitiveManager &) |
| | Set up an id for generating GLSL code.
|
| void | ResetShaderId () |
| | Reset the id for generating GLSL code.
|
| virtual QString | GetGradientShader (PrimitiveManager &, std::list< QString > &, bool &) const |
| | Compute the GLSL code to compute the gradient the sdf.
|
|
virtual QJsonValue | ToJson () const |
| | Conversion to JavaScript Object Notation.
|
| virtual double | K () const |
| | Return the Lipschitz constant of the node.
|
|
Box2 | GetBox () const |
| | Return the bounding box of the node.
|
|
virtual int | Nodes () const |
| | Compute the number of nodes in the sub-tree.
|
|
| static SDFNode2 * | FromJson (const QJsonValue &json) |
| | Conversion from JavaScript Object Notation.
|
|
Box2 | box = Box2::Infinity |
| | Box bounding the surface.
|
|
double | k = 1.0 |
| | Lipschitz constant.
|
|
int | cost = 1 |
| | Cost of the node.
|
|
static constexpr double | Epsilon = 0.01 |
| | Small constant used for bounding volumes.
|
Ellipse primitive.
,
- Author
- Lucie Fournier
◆ SDFEllipse2()
| SDFEllipse2::SDFEllipse2 |
( |
const Vector2 & | c, |
|
|
const double | a, |
|
|
const double | b ) |
|
explicit |
Create an ellipse2.
- Parameters
-
| c | Center. |
| a,b | Axis lengths. |
◆ GetShader()
| QString SDFEllipse2::GetShader |
( |
PrimitiveManager & | primitives, |
|
|
std::list< QString > & | dependency, |
|
|
bool & | valid_glsl ) const |
|
virtual |
Compute the GLSL code to render the node.
- Author
- Hubert-Brierre Pierre
Reimplemented from SDFNode2.
◆ Memory()
| int SDFEllipse2::Memory |
( |
| ) |
const |
|
virtual |
Return the size of a sub-tree.
Reimplemented from SDFNode2.
◆ Signed()
| double SDFEllipse2::Signed |
( |
const Vector2 & | p | ) |
const |
|
virtual |
Compute the signed Euclidean distance function.
By default compute the signed distance to the bounding box of the primitive.
- Parameters
-
Reimplemented from SDFEuclidean2.