SimplexGridFactory
Contains convenience interfaces to triangle (via Triangulate.jl) and (planned...) TetGen.
API Documentation
Mesh generator interface
ExtendableGrids.simplexgrid
— Methodsimplexgrid(flags::String, input::Triangulate.TriangulateIO; unsuitable) -> ExtendableGrid{Float64,Int32}
Create Grid from Triangle input data.
See the documentations for TriangulateIO
, triunsuitable
and the short resp. long documentation of the Triangle control flags.
ExtendableGrids.simplexgrid
— Methodfunction simplexgrid(;flags::String="pAaqDQ",
points=Array{Cdouble,2}(undef,0,0),
bfaces=Array{Cint,2}(undef,0,0),
bfaceregions=Array{Cint,1}(undef,0),
regionpoints=Array{Cdouble,2}(undef,0,0),
regionnumbers=Array{Cint,1}(undef,0),
regionvolumes=Array{Cdouble,1}(undef,0),
unsuitable=nothing
)
Create Grid from a number of input arrays. The 2D input arrays are transposed if necessary and converted to the proper data types for Triangulate.
This conversion is not performed if the data types are those indicated in the defaults and the leading dimension of 2D arrays corresponds to the space dimension.
See the documentations for triunsuitable
and the short resp. long documentation of the Triangle control flags.
SimplexGridFactory.triangulateio
— Methodtriangulateio(; flags, points, bfaces, bfaceregions, regionpoints, regionnumbers, regionvolumes) -> Triangulate.TriangulateIO
Create a TriangulateIO structure from a number of input arrays. The 2D input arrays are transposed if necessary and converted to the proper data types for Triangulate.
This conversion is not performed if the data types are those indicated in the defaults and the leading dimension of 2D arrays corresponds to the space dimension.
SimplexGridBuilder
SimplexGridFactory.SimplexGridBuilder
— Typemutable struct SimplexGridBuilder
Simplex grid builder: wrapper around array based mesh generator interface. It allows build up the input data incrementally.
SimplexGridFactory.SimplexGridBuilder
— MethodExtendableGrids.dim_space
— Methoddim_space(this::SimplexGridBuilder) -> Int64
Space dimension
ExtendableGrids.simplexgrid
— Methodsimplexgrid(this::SimplexGridBuilder) -> ExtendableGrid{Float64,Int32}
Build simplex grid from the current state of the builder.
SimplexGridFactory.appendflags!
— Methodappendflags!(this::SimplexGridBuilder, flags::String) -> String
Append flags to Triangle control flags
SimplexGridFactory.cellregion!
— Methodcellregion!(this::SimplexGridBuilder, x::Any, y::Any, z::Any; region, volume) -> Int64
Add a region point marking a region, indicate simplex volume in this region.
SimplexGridFactory.cellregion!
— Methodcellregion!(this::SimplexGridBuilder, x::Any, y::Any; region, volume) -> Array{Int32,1}
Add a region point marking a region, indicate simplex volume in this region.
SimplexGridFactory.cellregion!
— Methodcellregion!(this::SimplexGridBuilder, x::Any; region, volume) -> Union{Int64, Array{Int32,1}}
Add a region point marking a region, indicate simplex volume in this region.
SimplexGridFactory.cellregion!
— Methodcellregion!(this::SimplexGridBuilder, p::Union{Tuple, Array{T,1} where T}; region, volume) -> Union{Int64, Array{Int32,1}}
Add a region point marking a region, indicate simplex volume in this region.
SimplexGridFactory.facet!
— Methodfacet!(this::SimplexGridBuilder, i1::Any, i2::Any, i3::Any, i4::Any; region) -> Int64
Add a facet via the corresponding point indices.
SimplexGridFactory.facet!
— Methodfacet!(this::SimplexGridBuilder, i1::Any, i2::Any, i3::Any; region) -> Int64
Add a facet via the corresponding point indices.
SimplexGridFactory.facet!
— Methodfacet!(this::SimplexGridBuilder, i1::Any, i2::Any; region) -> Int64
Add a facet via the corresponding point indices.
SimplexGridFactory.facet!
— Methodfacet!(this::SimplexGridBuilder, i::Any; region) -> Int64
Add a facet via the corresponding point indices.
SimplexGridFactory.facet!
— Methodfacet!(this::SimplexGridBuilder, p::Union{Tuple, Array{T,1} where T}; region) -> Int64
Add a facet via the corresponding point indices.
SimplexGridFactory.flags!
— Methodflags!(this::SimplexGridBuilder, flags::String) -> String
Set Triangle Control flags
SimplexGridFactory.flags!
— Methodflags!(this::SimplexGridBuilder, flags::Symbol) -> String
Set standard Triangle Control flags
SimplexGridFactory.flags
— Methodflags(this::SimplexGridBuilder) -> String
Current Triangle contol flags
SimplexGridFactory.hole!
— Methodhole!(this::SimplexGridBuilder, x::Any, y::Any, z::Any) -> Int64
Add a point marking a hole region
SimplexGridFactory.hole!
— Methodhole!(this::SimplexGridBuilder, x::Any, y::Any) -> Array{Int32,1}
Add a point marking a hole region
SimplexGridFactory.hole!
— Methodhole!(this::SimplexGridBuilder, x::Any) -> Any
Add a point marking a hole region
SimplexGridFactory.hole!
— Methodhole!(this::SimplexGridBuilder, p::Union{Tuple, Array{T,1} where T}) -> Any
Add a point marking a hole region
SimplexGridFactory.point!
— Methodpoint!(this::SimplexGridBuilder, x::Any, y::Any, z::Any) -> Int64
Add point or merge with already existing point. Return its index.
SimplexGridFactory.point!
— Methodpoint!(this::SimplexGridBuilder, x::Any, y::Any) -> Int64
Add point or merge with already existing point. Return its index.
SimplexGridFactory.point!
— Methodpoint!(this::SimplexGridBuilder, x::Any) -> Int64
Add point or merge with already existing point. Return its index.
SimplexGridFactory.point!
— Methodpoint!(this::SimplexGridBuilder, p::Union{Tuple, Array{T,1} where T}) -> Int64
Add point or merge with already existing point. Return its index.
SimplexGridFactory.triangleflags
— Methodtriangleflags(s::Symbol) -> String
Return some standard triangle control flags.
SimplexGridFactory.triangleflags
— Methodtriangleflags() -> Dict{Symbol,String}
Return Dict with possible standard triangle control flags.
SimplexGridFactory.triangulateio
— Methodtriangulateio(this::SimplexGridBuilder) -> Triangulate.TriangulateIO
Create triangle input from the current state of the builder.
SimplexGridFactory.unsuitable!
— Methodunsuitable!(this::SimplexGridBuilder, func::Function) -> Function
Set unsuitable function, see triunsuitable
.
ExtendableGrids.plot!
— Methodplot!(ctx::PlotterContext, gf::SimplexGridBuilder; kwargs...) -> Any
Two panel plot of gridfactory and its output.
ExtendableGrids.plot
— Methodplot(gf::SimplexGridBuilder; Plotter, kwargs...)
Two panel plot of gridfactory with input and resulting grid