Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[mesh] [feature] allow modify mesh frame elevation by force/break lines
- Loading branch information
Showing
21 changed files
with
2,524 additions
and
40 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
112 changes: 112 additions & 0 deletions
112
python/core/auto_generated/mesh/qgsmeshforcebypolylines.sip.in
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
/************************************************************************ | ||
* This file has been generated automatically from * | ||
* * | ||
* src/core/mesh/qgsmeshforcebypolylines.h * | ||
* * | ||
* Do not edit manually ! Edit header and run scripts/sipify.pl again * | ||
************************************************************************/ | ||
|
||
|
||
|
||
class QgsMeshEditForceByLine : QgsMeshAdvancedEditing | ||
{ | ||
%Docstring(signature="appended") | ||
|
||
Class derived from :py:class:`QgsMeshAdvancedEditing` that forces mesh based on a line | ||
|
||
Forcing lines consist of line that the faces are forced to follow, that is edges of encountered faces have to be on theses lines. | ||
|
||
Caller of this class has to set the line with :py:func:`~setInputLine` before applying the edition with :py:func:`QgsMeshEditor.advancedEdit()` | ||
|
||
Other option has also to be set before calling :py:func:`QgsMeshEditor.advancedEdit()` | ||
|
||
.. versionadded:: 3.22 | ||
%End | ||
|
||
%TypeHeaderCode | ||
#include "qgsmeshforcebypolylines.h" | ||
%End | ||
public: | ||
|
||
QgsMeshEditForceByLine(); | ||
%Docstring | ||
Constructor | ||
%End | ||
|
||
void setInputLine( const QgsPoint &pt1, const QgsPoint &pt2, double tolerance, bool newVertexOnIntersection ); | ||
%Docstring | ||
Sets the input forcing line in rendering coordinates | ||
%End | ||
|
||
void setTolerance( double tolerance ); | ||
%Docstring | ||
Sets the tolerance in redering coordinate system unit | ||
%End | ||
|
||
void setAddVertexOnIntersection( bool addVertex ); | ||
%Docstring | ||
Sets whether vertices will be added when the lines will intersect internal edges of faces, default is ``False`` | ||
%End | ||
|
||
void setDefaultZValue( double defaultZValue ); | ||
%Docstring | ||
Sets the default value of Z coordinate to use for new vertices, this value will be used if the Z value | ||
%End | ||
|
||
void setInterpolateZValueOnMesh( bool interpolateZValueOnMesh ); | ||
%Docstring | ||
Sets whether the new created vertices will have their value interpolated from the existing mesh. | ||
If not, Z value will be interpolated from the lines, | ||
in case these line are not 3D, the default value will be used (:py:func:`setDefaultZValue`) | ||
%End | ||
|
||
}; | ||
|
||
|
||
|
||
class QgsMeshEditForceByPolylines : QgsMeshEditForceByLine | ||
{ | ||
%Docstring(signature="appended") | ||
|
||
Class derived from QgsMeshEditForceByLine that forces mesh based on polyline. | ||
|
||
Forcing lines consist of line that the faces are forced to follow, that is edges of encountered faces have to be on theses lines. | ||
|
||
Caller of this class has to add the lines from :py:class:`QgsGeometry` instances with :py:func:`~QgsMeshEditForceByLine.addLineFromGeometry` or :py:func:`~QgsMeshEditForceByLine.addLinesFromGeometries` | ||
before applying the edition with :py:func:`QgsMeshEditor.advancedEdit()` | ||
|
||
.. versionadded:: 3.22 | ||
%End | ||
|
||
%TypeHeaderCode | ||
#include "qgsmeshforcebypolylines.h" | ||
%End | ||
public: | ||
|
||
QgsMeshEditForceByPolylines(); | ||
%Docstring | ||
Constructor | ||
%End | ||
|
||
virtual bool isFinished() const; | ||
|
||
|
||
void addLineFromGeometry( const QgsGeometry &geom ); | ||
%Docstring | ||
Adds a input forcing line geometry in rendering coordinates | ||
%End | ||
|
||
void addLinesFromGeometries( const QList<QgsGeometry> geometries ); | ||
%Docstring | ||
Adds a list of input forcing lines geometry in rendering coordinates | ||
%End | ||
|
||
}; | ||
|
||
/************************************************************************ | ||
* This file has been generated automatically from * | ||
* * | ||
* src/core/mesh/qgsmeshforcebypolylines.h * | ||
* * | ||
* Do not edit manually ! Edit header and run scripts/sipify.pl again * | ||
************************************************************************/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.