extract explicit mesh with topology information from implicit surfaces with boolean operations, and do surface/volume integrating on them.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

23 lines
889 B

#pragma once
#include <macros.h>
#include "primitive/simple/sphere.hpp"
#include "primitive/simple/cylinder.hpp"
EXTERN_C struct PE_API primitive_data_center_t {
primitive_data_center_t() noexcept;
~primitive_data_center_t() noexcept;
hashed_refcount_hive_mp<internal::paired_model_matrix, internal::paired_model_matrix> transform_blocks{};
// all other data depend on cached transform_blocks
hashed_refcount_hive_mp<internal::plane_paired_model_matrix, internal::plane_t> planes{};
hashed_refcount_hive_mp<internal::paired_model_matrix*, internal::sphere_face_t> spheres{};
hashed_refcount_hive_mp<internal::cylinder_paired_model_matrix, internal::cylinder_face_t> cylinders{};
};
namespace internal
{
PE_API primitive* new_primitive(primitive_type type);
PE_API primitive* copy_primitive(primitive* ptr);
} // namespace internal