0.6.0
Loading...
Searching...
No Matches
surface_mesh.f90 File Reference

Data Types

type  mod_shape_surface_mesh::t_distance_list
 Distance list Store distances. Act as a z-buffer. More...
 
type  mod_shape_surface_mesh::t_shape_surface_mesh
 Surface mesh shape. More...
 

Modules

module  mod_shape_surface_mesh
 

Functions/Subroutines

pure subroutine mod_shape_surface_mesh::reallocate_distance_list (z_buffer)
 
pure subroutine mod_shape_surface_mesh::add_distance (z_buffer, distance, face)
 
subroutine mod_shape_surface_mesh::initialize_shape_surface_mesh (shape)
 Initialize the surface mesh shape.
 
subroutine mod_shape_surface_mesh::copy_shape_surface_mesh (shape, copy)
 Copy the surface mesh.
 
logical pure function mod_shape_surface_mesh::shape_surface_mesh_is_inside (shape, point)
 Check if a point lies inside the surface mesh.
 
subroutine mod_shape_surface_mesh::shape_surface_mesh_get_samples_inside (shape, i, j, k, n, n_samples, samples)
 Check if a given number of point lies in a surface mesh.
 
pure subroutine mod_shape_surface_mesh::shape_surface_mesh_get_distance (shape, point, distance, direction)
 Compute the signed distance and the signed direction from a point to the surface mesh.
 
pure subroutine mod_shape_surface_mesh::shape_surface_mesh_ray_trace (shape, ray, has_normal, intersection_list)
 Compute the intersection between a surface mesh and a ray.
 
pure subroutine mod_shape_surface_mesh::filter_intersections (polyhedron, origin, list, filtered_list)
 
subroutine mod_shape_surface_mesh::rasterize_surface_mesh (surface_mesh, n_samples)
 
pure subroutine mod_shape_surface_mesh::filter_z_buffer (surface_mesh, n_samples)
 
pure subroutine mod_shape_surface_mesh::filter_z_buffer_uv (surface_mesh, coords, u, v)
 
pure subroutine mod_shape_surface_mesh::rasterization_compute_distance (surface_mesh, face, i, j, u, v, n_samples, coords)
 
integer pure function mod_shape_surface_mesh::locate_cell (x, guess, coord)
 

Variables

double precision, parameter mod_shape_surface_mesh::distance_epsilon = 1d3*epsilon(1d0)
 
integer, parameter mod_shape_surface_mesh::buffer_size = 2