Trait Subdiv2DTraitConst

Source
pub trait Subdiv2DTraitConst {
Show 14 methods // Required method fn as_raw_Subdiv2D(&self) -> *const c_void; // Provided methods fn get_edge_list(&self, edge_list: &mut Vector<Vec4f>) -> Result<()> { ... } fn get_leading_edge_list( &self, leading_edge_list: &mut Vector<i32>, ) -> Result<()> { ... } fn get_triangle_list(&self, triangle_list: &mut Vector<Vec6f>) -> Result<()> { ... } fn get_vertex(&self, vertex: i32, first_edge: &mut i32) -> Result<Point2f> { ... } fn get_vertex_def(&self, vertex: i32) -> Result<Point2f> { ... } fn get_edge(&self, edge: i32, next_edge_type: i32) -> Result<i32> { ... } fn next_edge(&self, edge: i32) -> Result<i32> { ... } fn rotate_edge(&self, edge: i32, rotate: i32) -> Result<i32> { ... } fn sym_edge(&self, edge: i32) -> Result<i32> { ... } fn edge_org(&self, edge: i32, orgpt: &mut Point2f) -> Result<i32> { ... } fn edge_org_def(&self, edge: i32) -> Result<i32> { ... } fn edge_dst(&self, edge: i32, dstpt: &mut Point2f) -> Result<i32> { ... } fn edge_dst_def(&self, edge: i32) -> Result<i32> { ... }
}
Expand description

Constant methods for crate::imgproc::Subdiv2D

Required Methods§

Provided Methods§

Source

fn get_edge_list(&self, edge_list: &mut Vector<Vec4f>) -> Result<()>

Returns a list of all edges.

§Parameters
  • edgeList: Output vector.

The function gives each edge as a 4 numbers vector, where each two are one of the edge vertices. i.e. org_x = v[0], org_y = v[1], dst_x = v[2], dst_y = v[3].

Source

fn get_leading_edge_list( &self, leading_edge_list: &mut Vector<i32>, ) -> Result<()>

Returns a list of the leading edge ID connected to each triangle.

§Parameters
  • leadingEdgeList: Output vector.

The function gives one edge ID for each triangle.

Source

fn get_triangle_list(&self, triangle_list: &mut Vector<Vec6f>) -> Result<()>

Returns a list of all triangles.

§Parameters
  • triangleList: Output vector.

The function gives each triangle as a 6 numbers vector, where each two are one of the triangle vertices. i.e. p1_x = v[0], p1_y = v[1], p2_x = v[2], p2_y = v[3], p3_x = v[4], p3_y = v[5].

Source

fn get_vertex(&self, vertex: i32, first_edge: &mut i32) -> Result<Point2f>

Returns vertex location from vertex ID.

§Parameters
  • vertex: vertex ID.
  • firstEdge: Optional. The first edge ID which is connected to the vertex.
§Returns

vertex (x,y)

§C++ default parameters
  • first_edge: 0
Source

fn get_vertex_def(&self, vertex: i32) -> Result<Point2f>

Returns vertex location from vertex ID.

§Parameters
  • vertex: vertex ID.
  • firstEdge: Optional. The first edge ID which is connected to the vertex.
§Returns

vertex (x,y)

§Note

This alternative version of Subdiv2DTraitConst::get_vertex function uses the following default values for its arguments:

  • first_edge: 0
Source

fn get_edge(&self, edge: i32, next_edge_type: i32) -> Result<i32>

Returns one of the edges related to the given edge.

§Parameters
  • edge: Subdivision edge ID.
  • nextEdgeType: Parameter specifying which of the related edges to return. The following values are possible:
  • NEXT_AROUND_ORG next around the edge origin ( eOnext on the picture below if e is the input edge)
  • NEXT_AROUND_DST next around the edge vertex ( eDnext )
  • PREV_AROUND_ORG previous around the edge origin (reversed eRnext )
  • PREV_AROUND_DST previous around the edge destination (reversed eLnext )
  • NEXT_AROUND_LEFT next around the left facet ( eLnext )
  • NEXT_AROUND_RIGHT next around the right facet ( eRnext )
  • PREV_AROUND_LEFT previous around the left facet (reversed eOnext )
  • PREV_AROUND_RIGHT previous around the right facet (reversed eDnext )

sample output

§Returns

edge ID related to the input edge.

Source

fn next_edge(&self, edge: i32) -> Result<i32>

Returns next edge around the edge origin.

§Parameters
  • edge: Subdivision edge ID.
§Returns

an integer which is next edge ID around the edge origin: eOnext on the picture above if e is the input edge).

Source

fn rotate_edge(&self, edge: i32, rotate: i32) -> Result<i32>

Returns another edge of the same quad-edge.

§Parameters
  • edge: Subdivision edge ID.
  • rotate: Parameter specifying which of the edges of the same quad-edge as the input one to return. The following values are possible:
  • 0 - the input edge ( e on the picture below if e is the input edge)
  • 1 - the rotated edge ( eRot )
  • 2 - the reversed edge (reversed e (in green))
  • 3 - the reversed rotated edge (reversed eRot (in green))
§Returns

one of the edges ID of the same quad-edge as the input edge.

Source

fn sym_edge(&self, edge: i32) -> Result<i32>

Source

fn edge_org(&self, edge: i32, orgpt: &mut Point2f) -> Result<i32>

Returns the edge origin.

§Parameters
  • edge: Subdivision edge ID.
  • orgpt: Output vertex location.
§Returns

vertex ID.

§C++ default parameters
  • orgpt: 0
Source

fn edge_org_def(&self, edge: i32) -> Result<i32>

Returns the edge origin.

§Parameters
  • edge: Subdivision edge ID.
  • orgpt: Output vertex location.
§Returns

vertex ID.

§Note

This alternative version of Subdiv2DTraitConst::edge_org function uses the following default values for its arguments:

  • orgpt: 0
Source

fn edge_dst(&self, edge: i32, dstpt: &mut Point2f) -> Result<i32>

Returns the edge destination.

§Parameters
  • edge: Subdivision edge ID.
  • dstpt: Output vertex location.
§Returns

vertex ID.

§C++ default parameters
  • dstpt: 0
Source

fn edge_dst_def(&self, edge: i32) -> Result<i32>

Returns the edge destination.

§Parameters
  • edge: Subdivision edge ID.
  • dstpt: Output vertex location.
§Returns

vertex ID.

§Note

This alternative version of Subdiv2DTraitConst::edge_dst function uses the following default values for its arguments:

  • dstpt: 0

Implementors§