VTB_REGULAR
using tetrahedron_type = struct Tetrahedron
using quaternion_type = vec4
using triangle_type = struct Triangle
struct Triangle
Fields
  • vec3 points[3]
Methods
struct Tetrahedron
Fields
  • vec3 points[4]
triangle_area(triangle_type t) -> T
quaternion_multiply(quaternion_type a, quaternion_type b) -> quaternion_type
tetrahedron_centroid(tetrahedron_type t) -> vec3
quaternion_rotate(vec3 v, quaternion_type q) -> vec3
triangle_centroid(triangle_type t) -> vec3
intersection_at_water_level(vec3 a, vec3 b, T uz, T vz) -> vec3
hull_panel_set(global ship_hull_panel_t * panel, triangle_type base, bool wet, bool waterline, bool above, int index) -> void
quaternion_imag(quaternion_type q) -> vec3
tetrahedron_signed_volume(tetrahedron_type t) -> T
assign(global T array, vec3 v) -> void
quaternion_conj(quaternion_type q) -> quaternion_type
triangle_normal(triangle_type t) -> vec3
wetted_panels(int npanels, global const int * indices, global const T * vertices, vec3 ship_position, quaternion_type quaternion, global const T * zeta, vec2 zeta_lbound, vec2 zeta_ubound, int2 zeta_shape, global ship_hull_panel_t * triples, global T * waterline) -> kernel void
quaternion_real(quaternion_type q) -> T
tetrahedron_base(tetrahedron_type t) -> triangle_type