|
| | MR::CameraOrientation::CameraOrientation () |
| virtual void | MR::CameraOrientation::drawDialog (ImGuiContext *) override |
| virtual bool | MR::CameraOrientation::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| MRCOMMONPLUGINS_API | MR::ProvidesViewportWidget::ProvidesViewportWidget () |
| | MR::ProvidesViewportWidget::ProvidesViewportWidget (const ProvidesViewportWidget &)=delete |
| ProvidesViewportWidget & | MR::ProvidesViewportWidget::operator= (const ProvidesViewportWidget &)=delete |
| virtual | MR::ProvidesViewportWidget::~ProvidesViewportWidget ()=default |
| virtual | MR::ProvidesViewportWidget::ViewportWidgetInterface::~ViewportWidgetInterface ()=default |
| virtual ViewportId | MR::ProvidesViewportWidget::ViewportWidgetInterface::viewportId () const =0 |
| | Don't strictly need this, but MSVC warns otherwise.
|
| virtual void | MR::ProvidesViewportWidget::ViewportWidgetInterface::addButton (float order, std::string name, bool active, std::string icon, std::string tooltip, std::function< void()> onClick)=0 |
| virtual void | MR::ProvidesViewportWidget::providedViewportWidgets (ViewportWidgetInterface &in)=0 |
| MRCOMMONPLUGINS_API | MR::DrawViewportWidgetsItem::DrawViewportWidgetsItem () |
| bool | MR::DrawViewportWidgetsItem::action () override |
| | returns true if state of item changed
|
| | MR::MoveObjectByMouse::MoveObjectByMouse () |
| | MR::MoveObjectByMouse::~MoveObjectByMouse () |
| static MRCOMMONPLUGINS_API MoveObjectByMouse * | MR::MoveObjectByMouse::instance () |
| virtual bool | MR::MoveObjectByMouse::onDisable_ () override |
| virtual void | MR::MoveObjectByMouse::drawDialog (ImGuiContext *) override |
| virtual bool | MR::MoveObjectByMouse::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| virtual ObjAndPick | MR::MoveObjectByMouse::MoveObjectByMouseWithSelected::pickObjects_ (std::vector< std::shared_ptr< Object > > &objects, int modifiers) const override |
| virtual TransformMode | MR::MoveObjectByMouse::MoveObjectByMouseWithSelected::modeFromPickModifiers_ (int modifiers) const override |
| virtual void | MR::MoveObjectByMouse::MoveObjectByMouseWithSelected::setStartPoint_ (const ObjAndPick &pick, Vector3f &startPoint) const override |
| | MR::SelectObjectByClick::SelectObjectByClick () |
| virtual bool | MR::SelectObjectByClick::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| virtual void | MR::SelectObjectByClick::drawDialog (ImGuiContext *) override |
| | MR::AddCustomThemePlugin::AddCustomThemePlugin () |
| virtual void | MR::AddCustomThemePlugin::drawDialog (ImGuiContext *) override |
| virtual std::string | MR::AddCustomThemePlugin::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| | MR::OpenDirectoryMenuItem::OpenDirectoryMenuItem () |
| std::string | MR::OpenDirectoryMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| bool | MR::OpenDirectoryMenuItem::action () override |
| | returns true if state of item changed
|
| void | MR::OpenDirectoryMenuItem::openDirectory (const std::filesystem::path &directory) const |
| | MR::OpenFilesMenuItem::OpenFilesMenuItem () |
| | MR::OpenFilesMenuItem::~OpenFilesMenuItem () |
| virtual bool | MR::OpenFilesMenuItem::action () override |
| | returns true if state of item changed
|
| virtual const DropItemsList & | MR::OpenFilesMenuItem::dropItems () const override |
| | MR::OpenDICOMsMenuItem::OpenDICOMsMenuItem () |
| virtual bool | MR::OpenDICOMsMenuItem::action () override |
| | returns true if state of item changed
|
| | MR::SaveObjectMenuItem::SaveObjectMenuItem () |
| virtual bool | MR::SaveObjectMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::SaveObjectMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| | MR::SaveSelectedMenuItem::SaveSelectedMenuItem () |
| virtual bool | MR::SaveSelectedMenuItem::action () override |
| | returns true if state of item changed
|
| | MR::SaveSceneAsMenuItem::SaveSceneAsMenuItem (const std::string &pluginName="Save Scene As") |
| virtual bool | MR::SaveSceneAsMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::SaveSceneAsMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| void | MR::SaveSceneAsMenuItem::saveSceneAs_ () |
| void | MR::SaveSceneAsMenuItem::saveScene_ (const std::filesystem::path &savePath) |
| | MR::SaveSceneMenuItem::SaveSceneMenuItem () |
| virtual bool | MR::SaveSceneMenuItem::action () override |
| | returns true if state of item changed
|
| | MR::CaptureScreenshotMenuItem::CaptureScreenshotMenuItem () |
| virtual void | MR::CaptureScreenshotMenuItem::drawDialog (ImGuiContext *) override |
| virtual bool | MR::CaptureScreenshotMenuItem::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| | MR::CaptureUIScreenshotMenuItem::CaptureUIScreenshotMenuItem () |
| virtual bool | MR::CaptureUIScreenshotMenuItem::action () override |
| | returns true if state of item changed
|
| | MR::CaptureScreenshotToClipBoardMenuItem::CaptureScreenshotToClipBoardMenuItem () |
| virtual bool | MR::CaptureScreenshotToClipBoardMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::CaptureScreenshotToClipBoardMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| | MR::RibbonSceneSortByName::RibbonSceneSortByName () |
| virtual std::string | MR::RibbonSceneSortByName::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneSortByName::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneSelectAll::RibbonSceneSelectAll () |
| virtual std::string | MR::RibbonSceneSelectAll::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneSelectAll::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneUnselectAll::RibbonSceneUnselectAll () |
| virtual bool | MR::RibbonSceneUnselectAll::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneShowAll::RibbonSceneShowAll () |
| virtual std::string | MR::RibbonSceneShowAll::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneShowAll::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneHideAll::RibbonSceneHideAll () |
| virtual std::string | MR::RibbonSceneHideAll::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneHideAll::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneShowOnlyPrev::RibbonSceneShowOnlyPrev () |
| virtual std::string | MR::RibbonSceneShowOnlyPrev::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneShowOnlyPrev::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneShowOnlyNext::RibbonSceneShowOnlyNext () |
| virtual std::string | MR::RibbonSceneShowOnlyNext::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneShowOnlyNext::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneRename::RibbonSceneRename () |
| virtual bool | MR::RibbonSceneRename::action () override |
| | returns true if state of item changed
|
| | MR::RibbonSceneRemoveSelected::RibbonSceneRemoveSelected () |
| virtual std::string | MR::RibbonSceneRemoveSelected::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual bool | MR::RibbonSceneRemoveSelected::action () override |
| | returns true if state of item changed
|
| | MR::ResetSceneMenuItem::ResetSceneMenuItem () |
| virtual bool | MR::ResetSceneMenuItem::action () override |
| | returns true if state of item changed
|
| virtual bool | MR::ResetSceneMenuItem::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| | MR::FitDataMenuItem::FitDataMenuItem () |
| virtual bool | MR::FitDataMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::FitDataMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| | MR::FitSelectedObjectsMenuItem::FitSelectedObjectsMenuItem () |
| virtual bool | MR::FitSelectedObjectsMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::FitSelectedObjectsMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| | MR::FitSelectedPrimitivesMenuItem::FitSelectedPrimitivesMenuItem () |
| virtual bool | MR::FitSelectedPrimitivesMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::FitSelectedPrimitivesMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| | MR::SetViewPresetMenuItem::SetViewPresetMenuItem (Type type) |
| virtual bool | MR::SetViewPresetMenuItem::action () override |
| | returns true if state of item changed
|
| | MR::SetViewportConfigPresetMenuItem::SetViewportConfigPresetMenuItem (Type type) |
| virtual void | MR::SetViewportConfigPresetMenuItem::setCustomUpdateViewports (const std::function< void(const ViewportMask, ViewportId)> &callback) |
| virtual bool | MR::SetViewportConfigPresetMenuItem::action () override |
| | returns true if state of item changed
|
| | MR::BinaryOperations::BinaryOperations () |
| virtual void | MR::BinaryOperations::drawDialog (ImGuiContext *) override |
| | MR::OpenRawVoxelsPlugin::OpenRawVoxelsPlugin () |
| virtual void | MR::OpenRawVoxelsPlugin::drawDialog (ImGuiContext *) override |
| MRCUDA_API bool | MR::Cuda::isCudaAvailable (int *driverVersion=nullptr, int *runtimeVersion=nullptr, int *computeMajor=nullptr, int *computeMinor=nullptr) |
| MRCUDA_API size_t | MR::Cuda::getCudaAvailableMemory () |
| | Returns available GPU memory in bytes.
|
| MRCUDA_API size_t | MR::Cuda::getCudaSafeMemoryLimit () |
| | Returns maximum safe amount of free GPU memory that will be used for dynamic-sized buffers.
|
| MRCUDA_API size_t | MR::Cuda::maxBufferSize (size_t availableBytes, size_t elementCount, size_t elementBytes) |
| | Returns maximum buffer size in elements that can be allocated with given memory limit.
|
| MRCUDA_API size_t | MR::Cuda::maxBufferSizeAlignedByBlock (size_t availableBytes, const Vector2i &blockDims, size_t elementBytes) |
| MRCUDA_API size_t | MR::Cuda::maxBufferSizeAlignedByBlock (size_t availableBytes, const Vector3i &blockDims, size_t elementBytes) |
| MRCUDA_API | MR::Cuda::FastWindingNumber::FastWindingNumber (const Mesh &mesh) |
| | constructs this from AABB tree of given mesh;
|
| MRCUDA_API Expected< void > | MR::Cuda::FastWindingNumber::calcFromVector (std::vector< float > &res, const std::vector< Vector3f > &points, float beta, FaceId skipFace, const ProgressCallback &cb) override |
| | see methods' descriptions in IFastWindingNumber
|
| MRCUDA_API Expected< void > | MR::Cuda::FastWindingNumber::calcSelfIntersections (FaceBitSet &res, float beta, const ProgressCallback &cb) override |
| | calculates winding numbers for all centers of mesh's triangles. if winding number is less than 0 or greater then 1, that face is marked as self-intersected
|
| MRCUDA_API Expected< void > | MR::Cuda::FastWindingNumber::calcFromGrid (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, const ProgressCallback &cb) override |
| | calculates winding numbers in each point from a three-dimensional grid
|
| MRCUDA_API Expected< void > | MR::Cuda::FastWindingNumber::calcFromGridWithDistances (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, const ProgressCallback &cb) override |
| | calculates distances with the sign obtained from generalized winding number in each point from a three-dimensional grid; if sqr(res) < minDistSq or sqr(res) >= maxDistSq, then NaN is returned for such point
|
| MRCUDA_API Expected< void > | MR::Cuda::FastWindingNumber::calcFromGridByParts (GridByPartsFunc resFunc, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, int layerOverlap, const ProgressCallback &cb) override |
| | see methods' descriptions in IFastWindingNumberByParts
|
| MRCUDA_API Expected< void > | MR::Cuda::FastWindingNumber::calcFromGridWithDistancesByParts (GridByPartsFunc resFunc, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, int layerOverlap, const ProgressCallback &cb) override |
| | calculates distances with the sign obtained from generalized winding number in each point from a three-dimensional grid; if sqr(res) < minDistSq or sqr(res) >= maxDistSq, then NaN is returned for such point
|
| MRCUDA_API Expected< MR::SimpleVolumeMinMax > | MR::Cuda::pointsToDistanceVolume (const PointCloud &cloud, const MR::PointsToDistanceVolumeParams ¶ms) |
| | makes SimpleVolume filled with signed distances to points with normals
|
| MRCUDA_API Expected< void > | MR::Cuda::pointsToDistanceVolumeByParts (const PointCloud &cloud, const MR::PointsToDistanceVolumeParams ¶ms, std::function< Expected< void >(const SimpleVolumeMinMax &volume, int zOffset)> addPart, int layerOverlap) |
| MRCUDA_API VertScalars | MR::Cuda::computeSkyViewFactor (const Mesh &terrain, const VertCoords &samples, const VertBitSet &validSamples, const std::vector< MR::SkyPatch > &skyPatches, BitSet *outSkyRays=nullptr, std::vector< MR::MeshIntersectionResult > *outIntersections=nullptr) |
| MRCUDA_API BitSet | MR::Cuda::findSkyRays (const Mesh &terrain, const VertCoords &samples, const VertBitSet &validSamples, const std::vector< MR::SkyPatch > &skyPatches, std::vector< MR::MeshIntersectionResult > *outIntersections=nullptr) |
| MRCUDA_API Expected< void > | MR::Cuda::negatePicture (MR::Image &image) |
| | This function inverts Color value (255 - value in each channel except alpha)
|
| MRCUDA_API void | MR::Cuda::loadMRCudaDll () |
| | call this function to load MRCuda shared library
|
| static MREMBEDDEDPYTHON_API bool | MR::EmbeddedPython::isAvailable () |
| | Set this once before running anything.
|
| static MREMBEDDEDPYTHON_API void | MR::EmbeddedPython::shutdown () |
| static bool | MR::EmbeddedPython::nowRunning () |
| static MREMBEDDEDPYTHON_API bool | MR::EmbeddedPython::runString (std::string pythonString, std::function< void(bool success)> onDoneAsync=nullptr) |
| static MREMBEDDEDPYTHON_API bool | MR::EmbeddedPython::runScript (const std::filesystem::path &path) |
| static MREMBEDDEDPYTHON_API bool | MR::EmbeddedPython::isPythonScript (const std::filesystem::path &path) |
| Expected< LoadedObject > | MR::deserializeObjectTreeFrom3mf (const std::filesystem::path &file, const ProgressCallback &callback={}) |
| | loads scene from 3MF file in a new container object
|
| Expected< LoadedObject > | MR::deserializeObjectTreeFromModel (const std::filesystem::path &file, const ProgressCallback &callback={}) |
| | loads scene from .model file in a new container object
|
| Expected< Mesh > | MR::MeshLoad::fromCtm (const std::filesystem::path &file, const MeshLoadSettings &settings={}) |
| | loads from .ctm file
|
| Expected< Mesh > | MR::MeshLoad::fromCtm (std::istream &in, const MeshLoadSettings &settings={}) |
| Expected< void > | MR::MeshSave::toCtm (const Mesh &mesh, const std::filesystem::path &file, const CtmSaveOptions &options) |
| | saves in .ctm file
|
| Expected< void > | MR::MeshSave::toCtm (const Mesh &mesh, std::ostream &out, const CtmSaveOptions &options) |
| Expected< void > | MR::MeshSave::toCtm (const Mesh &mesh, const std::filesystem::path &file, const SaveSettings &settings={}) |
| Expected< void > | MR::MeshSave::toCtm (const Mesh &mesh, std::ostream &out, const SaveSettings &settings={}) |
| Expected< PointCloud > | MR::PointsLoad::fromCtm (const std::filesystem::path &file, const PointsLoadSettings &settings={}) |
| | loads from .ctm file
|
| Expected< PointCloud > | MR::PointsLoad::fromCtm (std::istream &in, const PointsLoadSettings &settings={}) |
| Expected< void > | MR::PointsSave::toCtm (const PointCloud &points, const std::filesystem::path &file, const CtmSavePointsOptions &options) |
| | saves in .ctm file
|
| Expected< void > | MR::PointsSave::toCtm (const PointCloud &points, std::ostream &out, const CtmSavePointsOptions &options) |
| Expected< void > | MR::PointsSave::toCtm (const PointCloud &points, const std::filesystem::path &file, const SaveSettings &settings={}) |
| Expected< void > | MR::PointsSave::toCtm (const PointCloud &points, std::ostream &out, const SaveSettings &settings={}) |
| Expected< std::shared_ptr< Object > > | MR::deserializeObjectTreeFromGltf (const std::filesystem::path &file, ProgressCallback callback={}) |
| | loads scene from glTF file in a new container object
|
| Expected< void > | MR::serializeObjectTreeToGltf (const Object &root, const std::filesystem::path &file, const SceneSave::Settings &settings) |
| | saves scene to a glTF file
|
| void | MR::loadIOExtras () |
| Expected< Image > | MR::ImageLoad::fromJpeg (const std::filesystem::path &path, bool ignoreDecompressErrors=false) |
| Expected< Image > | MR::ImageLoad::fromJpeg (std::istream &in, bool ignoreDecompressErrors=false) |
| Expected< Image > | MR::ImageLoad::fromJpeg (const char *data, size_t size, bool ignoreDecompressErrors=false) |
| Expected< void > | MR::ImageSave::toJpeg (const Image &image, const std::filesystem::path &path) |
| | saves in .jpg format
|
| Expected< PointCloud > | MR::PointsLoad::fromLas (const std::filesystem::path &file, const PointsLoadSettings &settings={}) |
| | loads from .las file
|
| Expected< PointCloud > | MR::PointsLoad::fromLas (std::istream &in, const PointsLoadSettings &settings={}) |
| Expected< void > | MR::Nesting::exportNesting3mf (const std::filesystem::path &path, const Nesting3mfParams ¶ms) |
| | exports slicestack 3mf file based on placed meshes
|
| | MR::Pdf::Pdf (const PdfParameters ¶ms=PdfParameters()) |
| | Ctor. Create a document, but not a page. To create a new page use newPage() method.
|
| | MR::Pdf::Pdf (Pdf &&other) noexcept |
| Pdf & | MR::Pdf::operator= (Pdf other) noexcept |
| | MR::Pdf::~Pdf () |
| | Dtor.
|
| void | MR::Pdf::addText (const std::string &text, bool isTitle=false) |
| void | MR::Pdf::addText (const std::string &text, const TextParams ¶ms) |
| float | MR::Pdf::getTextWidth (const std::string &text, const TextParams ¶ms) |
| | return text width
|
| void | MR::Pdf::addTable (const std::vector< std::pair< std::string, float > > &table) |
| void | MR::Pdf::addPaletteStatsTable (const std::vector< PaletteRowStats > &paletteStats) |
| void | MR::Pdf::addImageFromFile (const std::filesystem::path &imagePath, const ImageParams ¶ms) |
| | Add image from file in current cursor position. If image bigger than page size, autoscale image to page size. Move cursor.
|
| void | MR::Pdf::addImage (const Image &image, const ImageParams ¶ms) |
| void | MR::Pdf::newPage () |
| | Add new pageand move cursor on it.
|
| void | MR::Pdf::setNewPageAction (std::function< void(Pdf &)> action) |
| | set function to customize new page after creation
|
| void | MR::Pdf::saveToFile (const std::filesystem::path &documentPath) |
| | Save document to file.
|
| void | MR::Pdf::setCursorPosX (float posX) |
| void | MR::Pdf::setCursorPosY (float posY) |
| float | MR::Pdf::getCursorPosX () const |
| float | MR::Pdf::getCursorPosY () const |
| Vector2f | MR::Pdf::getPageSize () const |
| Box2f | MR::Pdf::getPageWorkArea () const |
| | MR::Pdf::operator bool () const |
| | Checking the ability to work with a document.
|
| | MR::Pdf::Cell::Cell () |
| template<typename T> |
| | MR::Pdf::Cell::Cell (const T &value) |
| std::string | MR::Pdf::Cell::toString (const std::string &fmtStr="{}") const |
| void | MR::Pdf::newTable (int columnCount) |
| | set up new table (clear table customization, reset parameters to default values)
|
| Expected< void > | MR::Pdf::setTableColumnWidths (const std::vector< float > &widths) |
| | set table column widths
|
| Expected< void > | MR::Pdf::addTableTitles (const std::vector< std::string > &titles) |
| | add in pdf table row with titles
|
| Expected< void > | MR::Pdf::setColumnValuesFormat (const std::vector< std::string > &formats) |
| | set format for conversion values to string for each column
|
| Expected< void > | MR::Pdf::addRow (const std::vector< Cell > &cells) |
| | add in pdf table row with values
|
| float | MR::Pdf::getTableTextWidth (const std::string &text) |
| void | MR::Pdf::setTableCustomRule (TableCustomRule rule) |
| | add rule to customize table cells
|
| void | MR::Pdf::drawTextInRect (const std::string &text, const Box2f &rect, const TextParams ¶ms) |
| | basic drawing methods without automatic cursor position control
|
| void | MR::Pdf::drawTextCell (const std::string &text, const TextCellParams ¶ms) |
| void | MR::Pdf::drawRect (const Box2f &rect, const Color &fillColor, const Color &strokeColor) |
| | draw rect (filled with border)
|
| Expected< Image > | MR::ImageLoad::fromPng (const std::filesystem::path &path) |
| | loads from .png format
|
| Expected< Image > | MR::ImageLoad::fromPng (std::istream &in) |
| Expected< void > | MR::ImageSave::toPng (const Image &image, const std::filesystem::path &path) |
| | saves in .png format
|
| Expected< void > | MR::ImageSave::toPng (const Image &image, std::ostream &os) |
| Expected< Image > | MR::ImageLoad::fromTiff (const std::filesystem::path &path) |
| | loads from .tiff format
|
| Expected< void > | MR::ImageSave::toTiff (const Image &image, const std::filesystem::path &path) |
| | saves in .tiff format
|
| Expected< void > | MR::DistanceMapSave::toTiff (const DistanceMap &dmap, const std::filesystem::path &path, const DistanceMapSaveSettings &settings={}) |
| | saves in .tiff format
|
| Expected< void > | MR::zlibCompressStream (std::istream &in, std::ostream &out, int level=-1) |
| | compress the input data using the Deflate algorithm
|
| Expected< void > | MR::zlibDecompressStream (std::istream &in, std::ostream &out) |
| HolesVertIds | MR::PlanarTriangulation::findHoleVertIdsByHoleEdges (const MeshTopology &tp, const std::vector< EdgePath > &holePaths) |
| | return vertices of holes that correspond internal contours representation of PlanarTriangulation
|
| bool | MR::PlanarTriangulation::IntersectionInfo::isIntersection () const |
| Mesh | MR::PlanarTriangulation::getOutlineMesh (const Contours2f &contours, IntersectionsMap *interMap=nullptr, const BaseOutlineParameters ¶ms={}) |
| Mesh | MR::PlanarTriangulation::getOutlineMesh (const Contours2d &contours, IntersectionsMap *interMap=nullptr, const BaseOutlineParameters ¶ms={}) |
| Contours2f | MR::PlanarTriangulation::getOutline (const Contours2f &contours, const OutlineParameters ¶ms={}) |
| | returns Contour representing outline if input contours
|
| Contours2f | MR::PlanarTriangulation::getOutline (const Contours2d &contours, const OutlineParameters ¶ms={}) |
| Mesh | MR::PlanarTriangulation::triangulateContours (const Contours2d &contours, const HolesVertIds *holeVertsIds=nullptr) |
| | triangulate 2d contours only closed contours are allowed (first point of each contour should be the same as last point of the contour)
|
| Mesh | MR::PlanarTriangulation::triangulateContours (const Contours2f &contours, const HolesVertIds *holeVertsIds=nullptr) |
| std::optional< Mesh > | MR::PlanarTriangulation::triangulateDisjointContours (const Contours2d &contours, const HolesVertIds *holeVertsIds=nullptr, std::vector< EdgePath > *outBoundaries=nullptr) |
| | triangulate 2d contours only closed contours are allowed (first point of each contour should be the same as last point of the contour)
|
| std::optional< Mesh > | MR::PlanarTriangulation::triangulateDisjointContours (const Contours2f &contours, const HolesVertIds *holeVertsIds=nullptr, std::vector< EdgePath > *outBoundaries=nullptr) |
| const NodeVec & | MR::AABBTreeBase< T >::nodes () const |
| | const-access to all nodes
|
| const Node & | MR::AABBTreeBase< T >::operator[] (NodeId nid) const |
| | const-access to any node
|
| static NodeId | MR::AABBTreeBase< T >::rootNodeId () |
| | returns root node id
|
| BoxT | MR::AABBTreeBase< T >::getBoundingBox () const |
| | returns the root node bounding box
|
| size_t | MR::AABBTreeBase< T >::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| size_t | MR::AABBTreeBase< T >::numLeaves () const |
| | returns the number of leaves in whole tree
|
| std::vector< NodeId > | MR::AABBTreeBase< T >::getSubtrees (int minNum) const |
| | returns at least given number of top-level not-intersecting subtrees, union of which contain all tree leaves
|
| LeafBitSet | MR::AABBTreeBase< T >::getSubtreeLeaves (NodeId subtreeRoot) const |
| | returns all leaves in the subtree with given root
|
| NodeBitSet | MR::AABBTreeBase< T >::getNodesFromLeaves (const LeafBitSet &leaves) const |
| | returns set of nodes containing among direct or indirect children given leaves
|
| void | MR::AABBTreeBase< T >::getLeafOrder (LeafBMap &leafMap) const |
| void | MR::AABBTreeBase< T >::getLeafOrderAndReset (LeafBMap &leafMap) |
| | MR::AABBTreeObjects::AABBTreeObjects ()=default |
| | MR::AABBTreeObjects::AABBTreeObjects (Vector< MeshOrPointsXf, ObjId > objs) |
| | creates tree for given set of objects each with its own transformation
|
| const MeshOrPoints & | MR::AABBTreeObjects::obj (ObjId oi) const |
| | gets object by its id
|
| const AffineXf3f & | MR::AABBTreeObjects::toWorld (ObjId oi) const |
| | gets transformation from local space of given object to world space
|
| const AffineXf3f & | MR::AABBTreeObjects::toLocal (ObjId oi) const |
| | gets transformation from world space to local space of given object
|
| const Vector< AffineXf3f, ObjId > & | MR::AABBTreeObjects::toLocal () const |
| | gets mapping: objId -> its transformation from world space to local space
|
| Expected< void > | MR::addNoise (VertCoords &points, const VertBitSet &validVerts, NoiseSettings settings) |
| | Adds noise to the points, using a normal distribution.
|
| Expected< void > | MR::addNoise (Mesh &mesh, const VertBitSet *region=nullptr, const NoiseSettings &settings={}) |
| bool | MR::AddVisualProperties< BaseObjectType, Properties >::supportsVisualizeProperty (AnyVisualizeMaskEnum type) const override |
| AllVisualizeProperties | MR::AddVisualProperties< BaseObjectType, Properties >::getAllVisualizeProperties () const override |
| const ViewportMask & | MR::AddVisualProperties< BaseObjectType, Properties >::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| void | MR::AddVisualProperties< BaseObjectType, Properties >::setAllVisualizeProperties_ (const AllVisualizeProperties &properties, std::size_t &pos) override |
| constexpr | MR::AffineXf< V >::AffineXf () noexcept=default |
| constexpr | MR::AffineXf< V >::AffineXf (const M &A, const V &b) noexcept |
| template<typename U> |
| | MR::AffineXf< V >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< U, V >) const expr explicit AffineXf(const AffineXf< U > &xf) noexcept |
| static constexpr AffineXf | MR::AffineXf< V >::translation (const V &b) noexcept |
| | creates translation-only transformation (with identity linear component)
|
| static constexpr AffineXf | MR::AffineXf< V >::linear (const M &A) noexcept |
| | creates linear-only transformation (without translation)
|
| static constexpr AffineXf | MR::AffineXf< V >::xfAround (const M &A, const V &stable) noexcept |
| | creates transformation with given linear part with given stable point
|
| constexpr V | MR::AffineXf< V >::operator() (const V &x) const noexcept |
| | application of the transformation to a point
|
| constexpr V | MR::AffineXf< V >::linearOnly (const V &x) const noexcept |
| | MR::FlowAggregator::FlowAggregator (const Mesh &mesh, const VertScalars &heights) |
| | prepares the processing of given mesh with given height in each vertex
|
| VertScalars | MR::FlowAggregator::computeFlow (const std::vector< FlowOrigin > &starts, const OutputFlows &out={}) const |
| VertScalars | MR::FlowAggregator::computeFlow (const std::vector< MeshTriPoint > &starts, const OutputFlows &out={}) const |
| | same with all amounts equal to 1
|
| VertScalars | MR::FlowAggregator::computeFlow (size_t numStarts, const std::function< MeshTriPoint(size_t)> &startById, const std::function< float(size_t)> &amountById, const std::function< const FaceBitSet *(size_t)> ®ionById, const OutputFlows &out={}) const |
| | general version that supplies starts in a functional way
|
| HashMap< VertId, Flows > | MR::FlowAggregator::computeFlowsPerBasin (const std::vector< FlowOrigin > &starts) const |
| HashMap< VertId, Flows > | MR::FlowAggregator::computeFlowsPerBasin (const std::vector< MeshTriPoint > &starts) const |
| | same with all amounts equal to 1
|
| HashMap< VertId, Flows > | MR::FlowAggregator::computeFlowsPerBasin (size_t numStarts, const std::function< MeshTriPoint(size_t)> &startById, const std::function< float(size_t)> &amountById) const |
| | general version that supplies starts in a functional way
|
| UndirectedEdgeBitSet | MR::FlowAggregator::computeCatchmentDelineation () const |
| Expected< Mesh > | MR::alignContoursToMesh (const Mesh &mesh, const Contours2f &contours, const ContoursMeshAlignParams ¶ms) |
| | Creates planar mesh out of given contour and aligns it to given surface.
|
| Expected< Mesh > | MR::bendContoursAlongCurve (const Contours2f &contours, const CurveFunc &curve, const BendContoursAlongCurveParams ¶ms) |
| | Converts contours in thick mesh, and deforms it along given path.
|
| Expected< Mesh > | MR::bendContoursAlongSurfacePath (const Contours2f &contours, const Mesh &mesh, const GeodesicPath &path, const BendContoursAlongCurveParams ¶ms) |
| | Converts contours in thick mesh, and deforms it along given surface path: start->path->end.
|
| Expected< Mesh > | MR::bendContoursAlongSurfacePath (const Contours2f &contours, const Mesh &mesh, const SurfacePath &path, const BendContoursAlongCurveParams ¶ms) |
| | Converts contours in thick mesh, and deforms it along given surface path.
|
| Expected< std::vector< float > > | MR::findPartialLens (const CurvePoints &cp, float *outCurveLen=nullptr) |
| CurvePoint | MR::getCurvePoint (const CurvePoints &cp, const std::vector< float > &lens, float p) |
| Expected< CurveFunc > | MR::curveFromPoints (const CurvePoints &cp, float *outCurveLen=nullptr) |
| Expected< CurveFunc > | MR::curveFromPoints (CurvePoints &&cp, float *outCurveLen=nullptr) |
| CurvePoints | MR::meshPathCurvePoints (const Mesh &mesh, const GeodesicPath &path) |
| | converts polyline given as a number of MeshTriPoint/MeshEdgePoint into CurvePoints
|
| CurvePoints | MR::meshPathCurvePoints (const Mesh &mesh, const SurfacePath &path) |
| void | MR::addBaseToPlanarMesh (Mesh &mesh, float zOffset) |
| | MR::AngleMeasurementObject::AngleMeasurementObject () |
| | The xf encodes the two rays: the origin is the angle point, (1,0,0) is the first ray, (0,1,0) is the second ray.
|
| | MR::AngleMeasurementObject::AngleMeasurementObject (AngleMeasurementObject &&) noexcept=default |
| AngleMeasurementObject & | MR::AngleMeasurementObject::operator= (AngleMeasurementObject &&) noexcept=default |
| static constexpr const char * | MR::AngleMeasurementObject::StaticTypeName () noexcept |
| const char * | MR::AngleMeasurementObject::typeName () const override |
| static constexpr const char * | MR::AngleMeasurementObject::StaticClassName () noexcept |
| virtual std::string | MR::AngleMeasurementObject::className () const override |
| static constexpr const char * | MR::AngleMeasurementObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::AngleMeasurementObject::classNameInPlural () const override |
| | MR::AngleMeasurementObject::AngleMeasurementObject (ProtectedStruct, const AngleMeasurementObject &obj) |
| | For std::make_shared() in clone().
|
| std::shared_ptr< Object > | MR::AngleMeasurementObject::clone () const override |
| std::shared_ptr< Object > | MR::AngleMeasurementObject::shallowClone () const override |
| Vector3f | MR::AngleMeasurementObject::getWorldPoint () const |
| | Get the angle point in world coordinates.
|
| Vector3f | MR::AngleMeasurementObject::getLocalPoint () const |
| | Get the angle point in local coordinates.
|
| Vector3f | MR::AngleMeasurementObject::getWorldRay (bool second) const |
| Vector3f | MR::AngleMeasurementObject::getLocalRay (bool second) const |
| | Same, but in local coordinates.
|
| virtual void | MR::AngleMeasurementObject::setLocalPoint (const MR::Vector3f &point) |
| | Set the angle point in the local coordinates.
|
| virtual void | MR::AngleMeasurementObject::setLocalRays (const MR::Vector3f &a, const MR::Vector3f &b) |
| bool | MR::AngleMeasurementObject::getIsConical () const |
| | Whether this is a conical angle. The middle line between the rays is preserved, but the rays themselves can be rotated.
|
| void | MR::AngleMeasurementObject::setIsConical (bool value) |
| bool | MR::AngleMeasurementObject::getShouldVisualizeRay (bool second) const |
| | Whether we should draw a ray from the center point to better visualize the angle. Enable this if there isn't already a line object there.
|
| void | MR::AngleMeasurementObject::setShouldVisualizeRay (bool second, bool enable) |
| float | MR::AngleMeasurementObject::computeAngle () const |
| | Computes the angle value, as if by acos(dot(...)) from the two normalized getWorldRay()s.
|
| std::vector< std::string > | MR::AngleMeasurementObject::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| | MR::AngleMeasurementObject::AngleMeasurementObject (const AngleMeasurementObject &other)=default |
| void | MR::AngleMeasurementObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| void | MR::AngleMeasurementObject::serializeFields_ (Json::Value &root) const override |
| void | MR::AngleMeasurementObject::deserializeFields_ (const Json::Value &root) override |
| void | MR::AngleMeasurementObject::setupRenderObject_ () const override |
| void | MR::AngleMeasurementObject::onWorldXfChanged_ () override |
| | Emits worldXfChangedSignal, but derived classes can add additional behavior to it.
|
| Mesh | MR::makeArrow (const Vector3f &base, const Vector3f &vert, const float &thickness=0.05f, const float &coneRadius=0.1f, const float coneSize=0.2f, const int qual=32) |
| | creates hollow arrow from the 'base' to the 'vert'. Number of points on the circle 'qual' is between 3 and 256
|
| Mesh | MR::makeBasisAxes (const float &size=1.0f, const float &thickness=0.05f, const float &coneRadius=0.1f, const float coneSize=0.2f, const int qual=32) |
| | creates the mesh with 3 axis arrows
|
| bool | MR::Ball< V >::inside (const V &pt) const |
| | returns true if given point is strictly inside the ball (not on its spherical surface)
|
| bool | MR::Ball< V >::outside (const V &pt) const |
| | returns true if given point is strictly outside the ball (not on its spherical surface)
|
| bool | MR::BasinVolumeCalculator::addTerrainTri (Triangle3f t, float level) |
| double | MR::BasinVolumeCalculator::getVolume () const |
| | call it after all addTerrainTri to get the volume
|
| double | MR::computeBasinVolume (const Mesh &mesh, const FaceBitSet &faces, float level) |
| void | MR::BestFitParabola< T >::addPoint (T x, T y) |
| | accumulates one more point for parabola fitting
|
| void | MR::BestFitParabola< T >::addPoint (T x, T y, T weight) |
| | accumulates one more point with given weight for parabola fitting
|
| Parabola< T > | MR::BestFitParabola< T >::getBestParabola (T tol=std::numeric_limits< T >::epsilon()) const |
| | computes the best approximating parabola from the accumulated points;
|
| constexpr bool | MR::canSolvePolynomial (auto degree) |
| constexpr bool | MR::canMinimizePolynomial (auto degree) |
| template<typename NewT> |
| Polynomial< NewT, degree > | MR::Polynomial< T, degree >::cast () const |
| T | MR::Polynomial< T, degree >::operator() (T x) const |
| std::vector< T > | MR::Polynomial< T, degree >::solve (T tol) const |
| Polynomial< T, degree==0 ? 0 :degree - 1 > | MR::Polynomial< T, degree >::deriv () const |
| T | MR::Polynomial< T, degree >::intervalMin (T a, T b) const |
| template<size_t degree> |
| | MR::PolynomialWrapper< T >::PolynomialWrapper (const Polynomial< T, degree > &p) |
| T | MR::PolynomialWrapper< T >::operator() (T x) const |
| PolynomialWrapper< T > | MR::PolynomialWrapper< T >::deriv () const |
| std::optional< T > | MR::PolynomialWrapper< T >::intervalMin (T a, T b) const |
| | MR::BestFitPolynomial< T, degree >::BestFitPolynomial (T reg) |
| void | MR::BestFitPolynomial< T, degree >::addPoint (T x, T y) |
| void | MR::BestFitPolynomial< T, degree >::addPoint (T x, T y, T weight) |
| Polynomial< T, degree > | MR::BestFitPolynomial< T, degree >::getBestPolynomial () const |
| | MR::QuadricApprox::QuadricApprox () |
| void | MR::QuadricApprox::addPoint (const Vector3d &point, double weight=1.0) |
| | Adds point to accumulation with weight.
|
| Eigen::Matrix< double, 6, 1 > | MR::QuadricApprox::calcBestCoefficients () const |
| static Vector3d | MR::QuadricApprox::findZeroProjection (const Eigen::Matrix< double, 6, 1 > &coefs) |
| V | MR::CubicBezierCurve< V >::getPoint (T t) const |
| | computes point on the curve from parameter value
|
| static std::array< T, 4 > | MR::CubicBezierCurve< V >::getWeights (T t) |
| | computes weights of every control point for given parameter value, the sum of all weights is equal to 1
|
| virtual | MR::Nesting::IBoxNestingPriority::~IBoxNestingPriority ()=default |
| virtual void | MR::Nesting::IBoxNestingPriority::init (const Box3f &thisBox)=0 |
| | init priority calculation with box of placed object
|
| virtual void | MR::Nesting::IBoxNestingPriority::addNested (const Box3f &box)=0 |
| | accumulate priority by one of already nested boxes
|
| virtual double | MR::Nesting::IBoxNestingPriority::complete () const =0 |
| | finalize priority and return the value (more - better)
|
| std::shared_ptr< IBoxNestingPriority > | MR::Nesting::getNestPostionMinPriorityMetric (const Box3f &nest) |
| | priority metric that minimizes position of new object by Z->Y->X coordinate in nest
|
| std::shared_ptr< IBoxNestingPriority > | MR::Nesting::getNeighborigDensityPriorityMetric (const Box3f &nest, float neighborhood) |
| | priority metric that maximizes density of placement in local neighborhood
|
| Expected< void > | MR::Nesting::fillNestingSocketCorneres (const std::vector< Box3f > &nestedBoxes, std::vector< BoxNestingCorner > &outCorners, const ProgressCallback &cb={}) |
| Expected< Vector< NestingResult, ObjId > > | MR::Nesting::boxNesting (const Vector< MeshXf, ObjId > &meshes, const BoxNestingParams ¶ms) |
| | finds best positions of input meshes to fit the nest (checks them by contacting box corners)
|
| constexpr | MR::ZeroOnMove< T >::ZeroOnMove () noexcept |
| constexpr | MR::ZeroOnMove< T >::ZeroOnMove (const ZeroOnMove &) noexcept=delete |
| constexpr | MR::ZeroOnMove< T >::ZeroOnMove (ZeroOnMove &&z) noexcept |
| constexpr ZeroOnMove & | MR::ZeroOnMove< T >::operator= (const ZeroOnMove &) noexcept=delete |
| constexpr ZeroOnMove & | MR::ZeroOnMove< T >::operator= (ZeroOnMove &&z) noexcept |
| | MR::Buffer< V, I >::Buffer ()=default |
| | MR::Buffer< V, I >::Buffer (size_t size) |
| auto | MR::Buffer< V, I >::capacity () const |
| auto | MR::Buffer< V, I >::size () const |
| bool | MR::Buffer< V, I >::empty () const |
| void | MR::Buffer< V, I >::clear () |
| void | MR::Buffer< V, I >::resize (size_t newSize) |
| const_reference | MR::Buffer< V, I >::operator[] (I i) const MR_LIFETIMEBOUND |
| reference | MR::Buffer< V, I >::operator[] (I i) MR_LIFETIMEBOUND |
| auto | MR::Buffer< V, I >::data () MR_LIFETIMEBOUND |
| auto | MR::Buffer< V, I >::data () const MR_LIFETIMEBOUND |
| I | MR::Buffer< V, I >::beginId () const |
| | returns the identifier of the first element
|
| I | MR::Buffer< V, I >::backId () const |
| | returns the identifier of the back() element
|
| I | MR::Buffer< V, I >::endId () const |
| | returns backId() + 1
|
| size_t | MR::Buffer< V, I >::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| template<typename T, typename I> |
| T | MR::getAt (const Buffer< T, I > &bmap MR_LIFETIMEBOUND_NESTED, I key, T def={}) |
| | given some buffer map and a key, returns the value associated with the key, or default value if key is invalid
|
| template<typename T> |
| BMap< T, T > | MR::compose (const BMap< T, T > &a, const BMap< T, T > &b) |
| | computes the composition of two mappings x -> a(b(x))
|
| | MR::ChangeObjectColorAction::ChangeObjectColorAction (const std::string &name, const std::shared_ptr< VisualObject > &obj, Type type) |
| | Constructed from original obj.
|
| virtual std::string | MR::ChangeObjectColorAction::name () const override |
| virtual void | MR::ChangeObjectColorAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeObjectColorAction::setObjectDirty (const std::shared_ptr< VisualObject > &) |
| virtual size_t | MR::ChangeObjectColorAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeFacesColorMapAction::ChangeFacesColorMapAction (const std::string &name, const std::shared_ptr< ObjectMeshHolder > &obj) |
| | use this constructor to remember object's face colors before making any changes in them
|
| | MR::ChangeFacesColorMapAction::ChangeFacesColorMapAction (const std::string &name, const std::shared_ptr< ObjectMeshHolder > &obj, FaceColors &&newColorMap) |
| | use this constructor to remember object's face colors and immediate set new value
|
| virtual std::string | MR::ChangeFacesColorMapAction::name () const override |
| virtual void | MR::ChangeFacesColorMapAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeFacesColorMapAction::setObjectDirty (const std::shared_ptr< ObjectMeshHolder > &obj) |
| virtual size_t | MR::ChangeFacesColorMapAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeLinesColorMapAction::ChangeLinesColorMapAction (const std::string &name, const std::shared_ptr< ObjectLinesHolder > &obj) |
| | use this constructor to remember object's line colors before making any changes in them
|
| | MR::ChangeLinesColorMapAction::ChangeLinesColorMapAction (const std::string &name, const std::shared_ptr< ObjectLinesHolder > &obj, UndirectedEdgeColors &&newColorMap) |
| | use this constructor to remember object's lines colors and immediate set new value
|
| virtual std::string | MR::ChangeLinesColorMapAction::name () const override |
| virtual void | MR::ChangeLinesColorMapAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeLinesColorMapAction::setObjectDirty (const std::shared_ptr< ObjectLinesHolder > &obj) |
| virtual size_t | MR::ChangeLinesColorMapAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeColoringType::ChangeColoringType (const std::string &name, const std::shared_ptr< VisualObject > &obj) |
| | use this constructor to remember object's coloring type before making any changes in it
|
| | MR::ChangeColoringType::ChangeColoringType (const std::string &name, const std::shared_ptr< VisualObject > &obj, ColoringType newType) |
| | use this constructor to remember object's coloring type and immediate set new value
|
| virtual std::string | MR::ChangeColoringType::name () const override |
| virtual void | MR::ChangeColoringType::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeColoringType::setObjectDirty (const std::shared_ptr< VisualObject > &obj) |
| virtual size_t | MR::ChangeColoringType::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeNameAction::ChangeNameAction (const std::string &actionName, std::shared_ptr< Object > obj) |
| | construct before giving new name to the object
|
| virtual std::string | MR::ChangeNameAction::name () const override |
| virtual void | MR::ChangeNameAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeNameAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeObjectAction::ChangeObjectAction (const std::string &name, const std::shared_ptr< Object > &obj) |
| | Constructed from original Object.
|
| virtual std::string | MR::ChangeObjectAction::name () const override |
| virtual void | MR::ChangeObjectAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeObjectAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeVisualizePropertyAction::ChangeVisualizePropertyAction (const std::string &name, const std::shared_ptr< VisualObject > &obj, AnyVisualizeMaskEnum visualizeMaskType) |
| | use this constructor to remember object's visualize property mask before making any changes in it
|
| | MR::ChangeVisualizePropertyAction::ChangeVisualizePropertyAction (const std::string &name, const std::shared_ptr< VisualObject > &obj, AnyVisualizeMaskEnum visualizeMaskType, ViewportMask newMask) |
| | use this constructor to remember object's visualize property mask and immediately set new value
|
| virtual std::string | MR::ChangeVisualizePropertyAction::name () const override |
| virtual void | MR::ChangeVisualizePropertyAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeVisualizePropertyAction::setObjectDirty (const std::shared_ptr< VisualObject > &) |
| virtual size_t | MR::ChangeVisualizePropertyAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeObjectSelectedAction::ChangeObjectSelectedAction (const std::string &name, const std::shared_ptr< Object > &obj) |
| | use this constructor to remember object's isSelected property before making any changes in it
|
| | MR::ChangeObjectSelectedAction::ChangeObjectSelectedAction (const std::string &name, const std::shared_ptr< Object > &obj, bool newValue) |
| | use this constructor to remember object's isSelected property and immediately set new value
|
| virtual std::string | MR::ChangeObjectSelectedAction::name () const override |
| virtual void | MR::ChangeObjectSelectedAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeObjectSelectedAction::setObjectDirty (const std::shared_ptr< Object > &) |
| virtual size_t | MR::ChangeObjectSelectedAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeObjectVisibilityAction::ChangeObjectVisibilityAction (const std::string &name, const std::shared_ptr< Object > &obj) |
| | use this constructor to remember object's visibility mask before making any changes in it
|
| | MR::ChangeObjectVisibilityAction::ChangeObjectVisibilityAction (const std::string &name, const std::shared_ptr< Object > &obj, ViewportMask newVisibilityMask) |
| | use this constructor to remember object's visibility mask and immediately set new mask
|
| virtual std::string | MR::ChangeObjectVisibilityAction::name () const override |
| virtual void | MR::ChangeObjectVisibilityAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeObjectVisibilityAction::setObjectDirty (const std::shared_ptr< Object > &) |
| virtual size_t | MR::ChangeObjectVisibilityAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangePointCloudAction::ChangePointCloudAction (std::string name, const std::shared_ptr< ObjectPoints > &obj) |
| | use this constructor to remember object's point cloud before making any changes in it
|
| virtual std::string | MR::ChangePointCloudAction::name () const override |
| virtual void | MR::ChangePointCloudAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangePointCloudAction::setObjectDirty (const std::shared_ptr< ObjectPoints > &obj) |
| virtual size_t | MR::ChangePointCloudAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangePointCloudPointsAction::ChangePointCloudPointsAction (std::string name, const std::shared_ptr< ObjectPoints > &obj) |
| | use this constructor to remember object's points field before making any changes in it
|
| | MR::ChangePointCloudPointsAction::ChangePointCloudPointsAction (std::string name, const std::shared_ptr< ObjectPoints > &obj, VertCoords &&newPoints) |
| | use this constructor to remember object's points field and immediate set new value
|
| virtual std::string | MR::ChangePointCloudPointsAction::name () const override |
| virtual void | MR::ChangePointCloudPointsAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangePointCloudPointsAction::setObjectDirty (const std::shared_ptr< ObjectPoints > &obj) |
| virtual size_t | MR::ChangePointCloudPointsAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeOnePointInCloudAction::ChangeOnePointInCloudAction (std::string name, const std::shared_ptr< ObjectPoints > &obj, VertId pointId) |
| | use this constructor to remember point's coordinates before making any changes in it
|
| | MR::ChangeOnePointInCloudAction::ChangeOnePointInCloudAction (std::string name, const std::shared_ptr< ObjectPoints > &obj, VertId pointId, const Vector3f &newCoords) |
| | use this constructor to remember point's coordinates and immediate set new coordinates
|
| virtual std::string | MR::ChangeOnePointInCloudAction::name () const override |
| virtual void | MR::ChangeOnePointInCloudAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeOnePointInCloudAction::setObjectDirty (const std::shared_ptr< ObjectPoints > &obj) |
| virtual size_t | MR::ChangeOnePointInCloudAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangePointCloudNormalsAction::ChangePointCloudNormalsAction (std::string name, const std::shared_ptr< ObjectPoints > &obj) |
| | use this constructor to remember point cloud's normals before making any changes in them
|
| | MR::ChangePointCloudNormalsAction::ChangePointCloudNormalsAction (std::string name, const std::shared_ptr< ObjectPoints > &obj, VertNormals &&newNormals) |
| | use this constructor to remember point cloud's normals and immediate set new value
|
| virtual std::string | MR::ChangePointCloudNormalsAction::name () const override |
| virtual void | MR::ChangePointCloudNormalsAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangePointCloudNormalsAction::setObjectDirty (const std::shared_ptr< ObjectPoints > &obj) |
| virtual size_t | MR::ChangePointCloudNormalsAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeOneNormalInCloudAction::ChangeOneNormalInCloudAction (std::string name, const std::shared_ptr< ObjectPoints > &obj, VertId pointId) |
| | use this constructor to remember point's normal before making any changes in it
|
| | MR::ChangeOneNormalInCloudAction::ChangeOneNormalInCloudAction (std::string name, const std::shared_ptr< ObjectPoints > &obj, VertId pointId, const Vector3f &newNormal) |
| | use this constructor to remember point's normal and immediate set new normal
|
| virtual std::string | MR::ChangeOneNormalInCloudAction::name () const override |
| virtual void | MR::ChangeOneNormalInCloudAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeOneNormalInCloudAction::setObjectDirty (const std::shared_ptr< ObjectPoints > &obj) |
| virtual size_t | MR::ChangeOneNormalInCloudAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeScaleAction::ChangeScaleAction (const std::string &name, const std::shared_ptr< Object > &obj, float scale) |
| | Constructor that performs object scaling, and remembers inverted scale value for undoing.
|
| virtual std::string | MR::ChangeScaleAction::name () const override |
| virtual void | MR::ChangeScaleAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeScaleAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeSceneAction::ChangeSceneAction (const std::string &name, const std::shared_ptr< Object > &obj, Type type) |
| | Constructed before removal or addition.
|
| virtual std::string | MR::ChangeSceneAction::name () const override |
| virtual void | MR::ChangeSceneAction::action (HistoryAction::Type actionType) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeSceneAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeSceneObjectsOrder::ChangeSceneObjectsOrder (const std::string &name, const std::shared_ptr< Object > &obj) |
| | Constructed before change order.
|
| virtual std::string | MR::ChangeSceneObjectsOrder::name () const override |
| virtual void | MR::ChangeSceneObjectsOrder::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeSceneObjectsOrder::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeValue< T >::ChangeValue (const std::string &name, T *currentValue, T oldValue) |
| | Constructed from original object's pointer and old value.
|
| virtual std::string | MR::ChangeValue< T >::name () const override |
| virtual void | MR::ChangeValue< T >::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeValue< T >::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeVertsColorMapAction< T >::ChangeVertsColorMapAction (const std::string &name, const std::shared_ptr< T > &obj) |
| | use this constructor to remember object's vertex colors before making any changes in them
|
| | MR::ChangeVertsColorMapAction< T >::ChangeVertsColorMapAction (const std::string &name, const std::shared_ptr< T > &obj, VertColors &&newVertsColorMap) |
| | use this constructor to remember object's vertex colors and immediate set new value
|
| virtual std::string | MR::ChangeVertsColorMapAction< T >::name () const override |
| virtual void | MR::ChangeVertsColorMapAction< T >::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::ChangeVertsColorMapAction< T >::setObjectDirty (const std::shared_ptr< T > &obj) |
| virtual size_t | MR::ChangeVertsColorMapAction< T >::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ChangeXfAction::ChangeXfAction (const std::string &name, const std::shared_ptr< Object > &obj) |
| | use this constructor to remember object's transformation before making any changes in it
|
| | MR::ChangeXfAction::ChangeXfAction (const std::string &name, const std::shared_ptr< Object > &obj, const AffineXf3f &newXf) |
| | use this constructor to remember object's transformation and immediately set new mesh
|
| virtual std::string | MR::ChangeXfAction::name () const override |
| virtual void | MR::ChangeXfAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeXfAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| const std::shared_ptr< Object > & | MR::ChangeXfAction::obj () const |
| MR_BIND_IGNORE std::optional< std::tm > | MR::Localtime (std::time_t time) |
| | A threadsafe equivalent for std::localtime(). Returns null on failure.
|
| MR_BIND_IGNORE std::tm | MR::LocaltimeOrZero (std::time_t time) |
| | Same, but returns a struct full of zeroes on error.
|
| bool | MR::ChunkIterator::operator== (const ChunkIterator &other) const |
| ChunkIterator & | MR::ChunkIterator::operator++ () |
| ChunkIterator | MR::ChunkIterator::operator++ (int) |
| Chunk | MR::ChunkIterator::operator* () const |
| Chunk | MR::ChunkIterator::operator-> () const |
| size_t | MR::chunkCount (size_t totalSize, size_t chunkSize, size_t overlap=0) |
| | returns the amount of chunks of given size required to cover the full array
|
| IteratorRange< ChunkIterator > | MR::splitByChunks (size_t totalSize, size_t chunkSize, size_t overlap=0) |
| | returns a pair of iterators for chunks covering the array of given size
|
| bool | MR::PointAndDistance::valid () const |
| | check for validity, otherwise there is no point closer than maxBidirDist
|
| | MR::PointAndDistance::operator bool () const |
| float | MR::MeshPointAndDistance::bidirDist () const |
| | bidirectional distance from input location to mtp considering point's weight
|
| float | MR::MeshPointAndDistance::dist () const |
| auto | MR::MeshPointAndDistance::operator<=> (const MeshPointAndDistance &other) const |
| | comparison telling which point is closer to the location
|
| bool | MR::MeshPointAndDistance::valid () const |
| | check for validity, otherwise there is no point closer than maxBidirDist
|
| | MR::MeshPointAndDistance::operator bool () const |
| PointAndDistance | MR::findClosestWeightedPoint (const Vector3f &loc, const AABBTreePoints &tree, const DistanceFromWeightedPointsComputeParams ¶ms) |
| MeshPointAndDistance | MR::findClosestWeightedMeshPoint (const Vector3f &loc, const Mesh &mesh, const DistanceFromWeightedPointsComputeParams ¶ms) |
| std::optional< VertMap > | MR::findSmallestCloseVertices (const Mesh &mesh, float closeDist, const ProgressCallback &cb={}) |
| std::optional< VertMap > | MR::findSmallestCloseVertices (const PointCloud &cloud, float closeDist, const ProgressCallback &cb={}) |
| std::optional< VertMap > | MR::findSmallestCloseVertices (const VertCoords &points, float closeDist, const VertBitSet *valid=nullptr, const ProgressCallback &cb={}) |
| std::optional< VertMap > | MR::findSmallestCloseVerticesUsingTree (const VertCoords &points, float closeDist, const AABBTreePoints &tree, const VertBitSet *valid, const ProgressCallback &cb={}) |
| std::optional< VertBitSet > | MR::findCloseVertices (const Mesh &mesh, float closeDist, const ProgressCallback &cb={}) |
| | finds all close vertices, where for each vertex there is another one located within given distance
|
| std::optional< VertBitSet > | MR::findCloseVertices (const PointCloud &cloud, float closeDist, const ProgressCallback &cb={}) |
| | finds all close vertices, where for each vertex there is another one located within given distance
|
| std::optional< VertBitSet > | MR::findCloseVertices (const VertCoords &points, float closeDist, const VertBitSet *valid=nullptr, const ProgressCallback &cb={}) |
| | finds all close vertices, where for each vertex there is another one located within given distance
|
| VertBitSet | MR::findCloseVertices (const VertMap &smallestMap) |
| | finds all close vertices, where for each vertex there is another one located within given distance; smallestMap is the result of findSmallestCloseVertices function call
|
| std::vector< EdgePair > | MR::findTwinEdgePairs (const Mesh &mesh, float closeDist) |
| | definition: if A,B and C,D are close vertices, then let us name AC and BD twin edges
|
| EdgeBitSet | MR::findTwinEdges (const Mesh &mesh, float closeDist) |
| | finds all directed twin edges
|
| EdgeBitSet | MR::findTwinEdges (const std::vector< EdgePair > &pairs) |
| UndirectedEdgeBitSet | MR::findTwinUndirectedEdges (const Mesh &mesh, float closeDist) |
| | finds all undirected twin edges
|
| UndirectedEdgeBitSet | MR::findTwinUndirectedEdges (const std::vector< EdgePair > &pairs) |
| UndirectedEdgeHashMap | MR::findTwinUndirectedEdgeHashMap (const Mesh &mesh, float closeDist) |
| | provided that each edge has at most one twin, composes bidirectional mapping between twins
|
| UndirectedEdgeHashMap | MR::findTwinUndirectedEdgeHashMap (const std::vector< EdgePair > &pairs) |
| static int | MR::CNCMachineSettings::getAxesCount () |
| void | MR::CNCMachineSettings::setRotationAxis (RotationAxisName paramName, const Vector3f &rotationAxis) |
| | rotationAxis length will be more then 0.01
|
| const Vector3f & | MR::CNCMachineSettings::getRotationAxis (RotationAxisName paramName) const |
| void | MR::CNCMachineSettings::setRotationLimits (RotationAxisName paramName, const RotationLimits &rotationLimits) |
| const RotationLimits & | MR::CNCMachineSettings::getRotationLimits (RotationAxisName paramName) const |
| void | MR::CNCMachineSettings::setRotationOrder (const RotationAxesOrder &rotationAxesOrder) |
| | duplicated values will be removed (ABAAC - > ABC)
|
| const RotationAxesOrder & | MR::CNCMachineSettings::getRotationOrder () const |
| void | MR::CNCMachineSettings::setFeedrateIdle (float feedrateIdle) |
| float | MR::CNCMachineSettings::getFeedrateIdle () const |
| void | MR::CNCMachineSettings::setHomePosition (const Vector3f &homePosition) |
| const Vector3f & | MR::CNCMachineSettings::getHomePosition () const |
| bool | MR::CNCMachineSettings::operator== (const CNCMachineSettings &rhs) |
| bool | MR::CNCMachineSettings::operator!= (const CNCMachineSettings &rhs) |
| Json::Value | MR::CNCMachineSettings::saveToJson () const |
| bool | MR::CNCMachineSettings::loadFromJson (const Json::Value &jsonValue) |
| constexpr | MR::Color::Color () noexcept |
| | MR::Color::Color (NoInit) noexcept |
| constexpr | MR::Color::Color (int r, int g, int b, int a) noexcept |
| constexpr | MR::Color::Color (int r, int g, int b) noexcept |
| constexpr | MR::Color::Color (float r, float g, float b, float a) noexcept |
| | Using a separate overload instead of a default argument to produce better C bindings.
|
| constexpr | MR::Color::Color (float r, float g, float b) noexcept |
| constexpr unsigned int | MR::Color::getUInt32 () const noexcept |
| | Using a separate overload instead of a default argument to produce better C bindings.
|
| static constexpr Color | MR::Color::white () noexcept |
| static constexpr Color | MR::Color::black () noexcept |
| static constexpr Color | MR::Color::gray () noexcept |
| static constexpr Color | MR::Color::red () noexcept |
| static constexpr Color | MR::Color::green () noexcept |
| static constexpr Color | MR::Color::blue () noexcept |
| static constexpr Color | MR::Color::yellow () noexcept |
| static constexpr Color | MR::Color::brown () noexcept |
| static constexpr Color | MR::Color::purple () noexcept |
| static constexpr Color | MR::Color::transparent () noexcept |
| template<typename T> |
| static constexpr uint8_t | MR::Color::valToUint8 (T val) noexcept |
| template<typename T> |
| constexpr | MR::Color::Color (const Vector3< T > &vec) noexcept |
| template<typename T> |
| constexpr | MR::Color::Color (const Vector4< T > &vec) noexcept |
| template<typename T> |
| constexpr | MR::Color::operator Vector4< T > () const noexcept |
| const uint8_t & | MR::Color::operator[] (int e) const |
| uint8_t & | MR::Color::operator[] (int e) |
| Color & | MR::Color::operator+= (const Color &other) |
| Color & | MR::Color::operator-= (const Color &other) |
| Color & | MR::Color::operator*= (float m) |
| Color & | MR::Color::operator/= (float m) |
| constexpr Color | MR::Color::scaledAlpha (float m) const noexcept |
| bool | MR::operator== (const Color &a, const Color &b) |
| bool | MR::operator!= (const Color &a, const Color &b) |
| Color | MR::operator+ (const Color &a, const Color &b) |
| Color | MR::operator- (const Color &a, const Color &b) |
| Color | MR::operator* (float a, const Color &b) |
| Color | MR::operator* (const Color &b, float a) |
| Color | MR::operator/ (const Color &b, float a) |
| Color | MR::blend (const Color &front, const Color &back) |
| | MR::ColorMapAggregator< Tag >::ColorMapAggregator ()=default |
| void | MR::ColorMapAggregator< Tag >::setDefaultColor (const Color &color) |
| | set default (background) color
|
| void | MR::ColorMapAggregator< Tag >::pushBack (const PartialColorMap &partitialColorMap) |
| | add color map after all (more priority)
|
| void | MR::ColorMapAggregator< Tag >::insert (int i, const PartialColorMap &partitialColorMap) |
| | insert color map before element #i (0 - minimum priority)
|
| void | MR::ColorMapAggregator< Tag >::replace (int i, const PartialColorMap &partitialColorMap) |
| | replace color map in #i position
|
| void | MR::ColorMapAggregator< Tag >::reset () |
| | reset all accumulated color map
|
| size_t | MR::ColorMapAggregator< Tag >::getColorMapNumber () |
| | get number of accumulated color maps
|
| const PartialColorMap & | MR::ColorMapAggregator< Tag >::getPartialColorMap (int i) |
| | get partial color map map by index
|
| void | MR::ColorMapAggregator< Tag >::erase (int i, int n=1) |
| | erase n color map from #i
|
| void | MR::ColorMapAggregator< Tag >::setMode (AggregateMode mode) |
| | set color map aggregating mode
|
| ColorMap | MR::ColorMapAggregator< Tag >::aggregate (const ElementBitSet &elementBitSet) |
| | get aggregated color map for active elements
|
| | MR::CombinedHistoryAction::CombinedHistoryAction (const std::string &name, const std::vector< std::shared_ptr< HistoryAction > > &actions) |
| | Will call action() for each actions in given order (undo in reverse, redo in forward)
|
| virtual std::string | MR::CombinedHistoryAction::name () const override |
| virtual void | MR::CombinedHistoryAction::action (HistoryAction::Type type) override |
| | This function is called on history action (undo, redo, etc.)
|
| HistoryActionsVector & | MR::CombinedHistoryAction::getStack () |
| const HistoryActionsVector & | MR::CombinedHistoryAction::getStack () const |
| bool | MR::CombinedHistoryAction::filter (HistoryStackFilter filteringCondition) |
| bool | MR::CombinedHistoryAction::empty () const |
| virtual size_t | MR::CombinedHistoryAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::Cone3< T >::Cone3 () |
| | MR::Cone3< T >::Cone3 (const Line3< T > &inAxis, T inAngle, T inHeight) |
| Vector3< T > & | MR::Cone3< T >::center (void) |
| | now we use an apex as center of the cone.
|
| const Vector3< T > & | MR::Cone3< T >::center (void) const |
| | now we use an apex as center of the cone.
|
| Vector3< T > & | MR::Cone3< T >::direction (void) |
| | main axis direction. It could be non normalized. For any cone point dot( point , direction ) >=0
|
| const Vector3< T > & | MR::Cone3< T >::direction (void) const |
| | main axis direction. It could be non normalized. For any cone point dot( point , direction ) >=0
|
| Vector3< T > & | MR::Cone3< T >::apex (void) |
| | return cone apex position
|
| const Vector3< T > & | MR::Cone3< T >::apex (void) const |
| | return cone apex position
|
| Vector3< T > | MR::Cone3< T >::projectPoint (const Vector3< T > &point) const |
| void | MR::ConeFittingFunctor< T >::setPoints (const std::vector< MR::Vector3< T > > &pointsMR) |
| int | MR::ConeFittingFunctor< T >::inputs () const |
| int | MR::ConeFittingFunctor< T >::values () const |
| int | MR::ConeFittingFunctor< T >::operator() (const InputType &x, ValueType &F) const |
| int | MR::ConeFittingFunctor< T >::df (const InputType &x, JacobianType &J) const |
| | MR::Cone3Approximation< T >::Cone3Approximation ()=default |
| T | MR::Cone3Approximation< T >::solve (const std::vector< MR::Vector3< T > > &points, Cone3< T > &cone, const Cone3ApproximationParams ¶ms={}) |
| | returns RMS for original points
|
| | MR::ConeObject::ConeObject () |
| | Creates simple Cone object with center in zero and radius - 1.
|
| | MR::ConeObject::ConeObject (const std::vector< Vector3f > &pointsToApprox) |
| | Finds best Cone to approx given points.
|
| | MR::ConeObject::ConeObject (ConeObject &&) noexcept=default |
| ConeObject & | MR::ConeObject::operator= (ConeObject &&) noexcept=default |
| static constexpr const char * | MR::ConeObject::StaticTypeName () noexcept |
| virtual const char * | MR::ConeObject::typeName () const override |
| static constexpr const char * | MR::ConeObject::StaticClassName () noexcept |
| virtual std::string | MR::ConeObject::className () const override |
| static constexpr const char * | MR::ConeObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ConeObject::classNameInPlural () const override |
| | MR::ConeObject::ConeObject (ProtectedStruct, const ConeObject &obj) |
| virtual std::shared_ptr< Object > | MR::ConeObject::clone () const override |
| virtual std::shared_ptr< Object > | MR::ConeObject::shallowClone () const override |
| float | MR::ConeObject::getAngle (ViewportId id={}) const |
| | calculates cone angle from xf. It is an angle betweeh main axis and side.
|
| Vector3f | MR::ConeObject::getCenter (ViewportId id={}) const |
| | calculates center from xf. Center is the apex of the cone.
|
| float | MR::ConeObject::getHeight (ViewportId id={}) const |
| | calculates cone height from xf
|
| Vector3f | MR::ConeObject::getDirection (ViewportId id={}) const |
| | calculates main axis direction from xf
|
| void | MR::ConeObject::setCenter (const Vector3f ¢er, ViewportId id={}) |
| | updates xf to fit given center. Center is the apex of the cone.
|
| void | MR::ConeObject::setDirection (const Vector3f &normal, ViewportId id={}) |
| | updates xf to fit main axis
|
| void | MR::ConeObject::setHeight (float height, ViewportId id={}) |
| | updates xf to fit cone height
|
| void | MR::ConeObject::setAngle (float angle, ViewportId id={}) |
| | updates xf to fit given cone angle. It is an angle betweeh main axis and side
|
| float | MR::ConeObject::getBaseRadius (ViewportId id={}) const |
| | Computes the base base radius from the xf.
|
| void | MR::ConeObject::setBaseRadius (float radius, ViewportId id={}) |
| | Updates the xf for the new base radius.
|
| virtual Vector3f | MR::ConeObject::getBasePoint (ViewportId id={}) const override |
| | Returns point considered as base for the feature.
|
| virtual const std::vector< FeatureObjectSharedProperty > & | MR::ConeObject::getAllSharedProperties () const override |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| FeatureObjectProjectPointResult | MR::ConeObject::projectPoint (const Vector3f &point, ViewportId id={}) const override |
| | MR::ConeObject::ConeObject (const ConeObject &other)=default |
| virtual void | MR::ConeObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ConeObject::serializeFields_ (Json::Value &root) const override |
| virtual Expected< std::future< Expected< void > > > | MR::ConeObject::serializeModel_ (const std::filesystem::path &) const override |
| virtual Expected< void > | MR::ConeObject::deserializeModel_ (const std::filesystem::path &, ProgressCallback) override |
| | Reads model from file.
|
| void | MR::ConeObject::setupRenderObject_ () const override |
| | MR::Config::Config (Config const &)=delete |
| void | MR::Config::operator= (Config const &)=delete |
| static Config & | MR::Config::instance () |
| void | MR::Config::reset (std::string appName) |
| const std::string & | MR::Config::getAppName () const |
| | the name of the application, UTF8 encoded
|
| void | MR::Config::writeToFile () |
| | writes current config to file. (implicitly called from destructor)
|
| bool | MR::Config::hasBool (const std::string &key) const |
| | returns true if MRColor with presented key exists
|
| bool | MR::Config::getBool (const std::string &key, bool defaultValue=false) const |
| | returns MRColor with presented key
|
| void | MR::Config::setBool (const std::string &key, bool keyValue) |
| | sets MRColor for presented key
|
| bool | MR::Config::hasColor (const std::string &key) const |
| | returns true if MRColor with presented key exists
|
| Color | MR::Config::getColor (const std::string &key, const Color &defaultValue=Color::black()) const |
| | returns MRColor with presented key
|
| void | MR::Config::setColor (const std::string &key, const Color &keyValue) |
| | sets MRColor for presented key
|
| bool | MR::Config::hasFileStack (const std::string &key) const |
| | returns true if 'recently used' files exist
|
| FileNamesStack | MR::Config::getFileStack (const std::string &key, const FileNamesStack &defaultValue=FileNamesStack()) const |
| | returns 'recently used' files list
|
| void | MR::Config::setFileStack (const std::string &key, const FileNamesStack &keyValue) |
| | sets 'recently used' files list
|
| bool | MR::Config::hasVector2i (const std::string &key) const |
| | returns true if Vector2i with presented key exists
|
| Vector2i | MR::Config::getVector2i (const std::string &key, const Vector2i &defaultValue=Vector2i()) const |
| | returns Vector2i with presented key
|
| void | MR::Config::setVector2i (const std::string &key, const Vector2i &keyValue) |
| | sets Vector2i for presented key
|
| bool | MR::Config::hasEnum (const Enum &enumeration, const std::string &key) const |
| | returns true if given enumeration value with this key exists and is correct
|
| int | MR::Config::getEnum (const Enum &enumeration, const std::string &key, int defaultValue=0) const |
| | returns custom enumeration value
|
| void | MR::Config::setEnum (const Enum &enumeration, const std::string &key, int keyValue) |
| | sets custom enumeration value
|
| bool | MR::Config::hasViewportMask (const std::string &key) const |
| ViewportMask | MR::Config::getViewportMask (const std::string &key, ViewportMask defaultValue={}) const |
| void | MR::Config::setViewportMask (const std::string &key, ViewportMask newValue) |
| bool | MR::Config::hasJsonValue (const std::string &key) |
| | returns true if json value with this key exists
|
| Json::Value | MR::Config::getJsonValue (const std::string &key, const Json::Value &defaultValue={}) |
| | returns custom json value
|
| void | MR::Config::setJsonValue (const std::string &key, const Json::Value &keyValue) |
| | sets custom json value
|
| Json::Value | MR::Config::toJson () const |
| | returns json with content of this config
|
| void | MR::Config::fromJson (const Json::Value &config) |
| | replace current config content with given one
|
| Expected< FaceBitSet > | MR::cutMeshByContour (Mesh &mesh, const Contour3f &contour, const AffineXf3f &xf={}) |
| Expected< FaceBitSet > | MR::cutMeshByContours (Mesh &mesh, const Contours3f &contours, const AffineXf3f &xf={}) |
| Expected< std::vector< EdgePath > > | MR::cutMeshByProjection (Mesh &mesh, const Contours3f &contours, const CutByProjectionSettings &settings) |
| | Performs orthographic projection with of given contours to mesh and cut result lines, fails if any point of contours has missed mesh on projection stage or cut contours contains self-intersections.
|
| std::vector< FaceBitSet > | MR::separateClosedContour (const Mesh &mesh, const std::vector< Vector3f > &contour, const PathMeshEdgePointCallback &cb={}) |
| void | MR::stitchContours (MeshTopology &topology, const EdgePath &c0, const EdgePath &c1) |
| EdgeLoop | MR::cutAlongEdgeLoop (MeshTopology &topology, const EdgeLoop &c0) |
| EdgeLoop | MR::cutAlongEdgeLoop (Mesh &mesh, const EdgeLoop &c0) |
| Mesh | MR::makeConvexHull (const VertCoords &points, const VertBitSet &validPoints) |
| | computes the mesh of convex hull from given input points
|
| Mesh | MR::makeConvexHull (const Mesh &in) |
| Mesh | MR::makeConvexHull (const PointCloud &in) |
| Contour2f | MR::makeConvexHull (Contour2f points) |
| | computes the contour of convex hull from given input points
|
| MeshTopology | MR::makeCubeTopology () |
| Mesh | MR::makeCube (const Vector3f &size=Vector3f::diagonal(1.0f), const Vector3f &base=Vector3f::diagonal(-0.5f)) |
| Mesh | MR::makeParallelepiped (const Vector3f side[3], const Vector3f &base) |
| | creates parallelepiped mesh with given min-corner base and given directional vectors size
|
| Mesh | MR::makeBoxMesh (const Box3f &box) |
| | creates mesh visualizing a box
|
| Mesh | MR::makeCylinder (float radius=0.1f, float length=1.0f, int resolution=16) |
| | Z-looking.
|
| Mesh | MR::makeOpenCylinder (float radius=1, float z1=-1, float z2=1, int numCircleSegments=16) |
| | A hollow cylinder.
|
| Mesh | MR::makeOpenCone (float radius=1, float zApex=0, float zBase=1, int numCircleSegments=16) |
| | A hollow cone.
|
| Mesh | MR::makeCylinderAdvanced (float radius0=0.1f, float radius1=0.1f, float start_angle=0.0f, float arc_size=2.0f *PI_F, float length=1.0f, int resolution=16) |
| Mesh | MR::makeCone (float radius0=0.1f, float length=1.0f, int resolution=32) |
| | Makes cone mesh by calling makeCylinderAdvanced with the top radius 0.
|
| | MR::Cylinder3< T >::Cylinder3 () |
| | MR::Cylinder3< T >::Cylinder3 (const Vector3< T > &inCenter, const Vector3< T > &inDirectoin, T inRadius, T inLength) |
| | MR::Cylinder3< T >::Cylinder3 (const Line3< T > &inAxis, T inRadius, T inLength) |
| Vector3< T > & | MR::Cylinder3< T >::center (void) |
| const Vector3< T > & | MR::Cylinder3< T >::center (void) const |
| Vector3< T > & | MR::Cylinder3< T >::direction (void) |
| const Vector3< T > & | MR::Cylinder3< T >::direction (void) const |
| | MR::Cylinder3Approximation< T >::Cylinder3Approximation () |
| void | MR::Cylinder3Approximation< T >::reset () |
| T | MR::Cylinder3Approximation< T >::solveGeneral (const std::vector< MR::Vector3< T > > &points, Cylinder3< T > &cylinder, size_t theta=180, size_t phi=90, bool isMultithread=true) |
| T | MR::Cylinder3Approximation< T >::solveSpecificAxis (const std::vector< MR::Vector3< T > > &points, Cylinder3< T > &cylinder, MR::Vector3< T > const &cylinderAxis) |
| | MR::CylinderObject::CylinderObject () |
| | Creates simple Cylinder object with center in zero and radius - 1.
|
| | MR::CylinderObject::CylinderObject (const std::vector< Vector3f > &pointsToApprox) |
| | Finds best Cylinder to approx given points.
|
| | MR::CylinderObject::CylinderObject (CylinderObject &&) noexcept=default |
| CylinderObject & | MR::CylinderObject::operator= (CylinderObject &&) noexcept=default |
| static constexpr const char * | MR::CylinderObject::StaticTypeName () noexcept |
| virtual const char * | MR::CylinderObject::typeName () const override |
| static constexpr const char * | MR::CylinderObject::StaticClassName () noexcept |
| virtual std::string | MR::CylinderObject::className () const override |
| static constexpr const char * | MR::CylinderObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::CylinderObject::classNameInPlural () const override |
| | MR::CylinderObject::CylinderObject (ProtectedStruct, const CylinderObject &obj) |
| virtual std::shared_ptr< Object > | MR::CylinderObject::clone () const override |
| virtual std::shared_ptr< Object > | MR::CylinderObject::shallowClone () const override |
| float | MR::CylinderObject::getRadius (ViewportId id={}) const |
| | calculates radius from xf
|
| Vector3f | MR::CylinderObject::getCenter (ViewportId id={}) const |
| | calculates center from xf
|
| void | MR::CylinderObject::setRadius (float radius, ViewportId id={}) |
| | updates xf to fit given radius
|
| void | MR::CylinderObject::setCenter (const Vector3f ¢er, ViewportId id={}) |
| | updates xf to fit given center
|
| Vector3f | MR::CylinderObject::getDirection (ViewportId id={}) const |
| | calculates main axis direction from xf
|
| void | MR::CylinderObject::setDirection (const Vector3f &normal, ViewportId id={}) |
| | updates xf to fit main axis
|
| float | MR::CylinderObject::getLength (ViewportId id={}) const |
| | calculates cylinder length from xf
|
| void | MR::CylinderObject::setLength (float length, ViewportId id={}) |
| | updates xf to fit cylinder length
|
| virtual Vector3f | MR::CylinderObject::getBasePoint (ViewportId id={}) const override |
| | Returns point considered as base for the feature.
|
| virtual const std::vector< FeatureObjectSharedProperty > & | MR::CylinderObject::getAllSharedProperties () const override |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| FeatureObjectProjectPointResult | MR::CylinderObject::projectPoint (const Vector3f &point, ViewportId id={}) const override |
| | MR::CylinderObject::CylinderObject (const CylinderObject &other)=default |
| virtual void | MR::CylinderObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::CylinderObject::serializeFields_ (Json::Value &root) const override |
| virtual Expected< std::future< Expected< void > > > | MR::CylinderObject::serializeModel_ (const std::filesystem::path &) const override |
| virtual Expected< void > | MR::CylinderObject::deserializeModel_ (const std::filesystem::path &, ProgressCallback) override |
| | Reads model from file.
|
| void | MR::CylinderObject::setupRenderObject_ () const override |
| | MR::DenseBox::DenseBox (const std::vector< Vector3f > &points, const AffineXf3f *xf=nullptr) |
| | Include given points into this dense box.
|
| | MR::DenseBox::DenseBox (const std::vector< Vector3f > &points, const std::vector< float > &weights, const AffineXf3f *xf=nullptr) |
| | Include given weighed points into this dense box.
|
| | MR::DenseBox::DenseBox (const MeshPart &meshPart, const AffineXf3f *xf=nullptr) |
| | Include mesh part into this dense box.
|
| | MR::DenseBox::DenseBox (const PointCloud &points, const AffineXf3f *xf=nullptr) |
| | Include point into this dense box.
|
| | MR::DenseBox::DenseBox (const Polyline3 &line, const AffineXf3f *xf=nullptr) |
| | Include line into this dense box.
|
| Vector3f | MR::DenseBox::center () const |
| | returns center of dense box
|
| Vector3f | MR::DenseBox::corner (const Vector3b &index) const |
| bool | MR::DenseBox::contains (const Vector3f &pt) const |
| | returns true if dense box contains given point
|
| const Box3f & | MR::DenseBox::box () const |
| | Access members.
|
| const AffineXf3f & | MR::DenseBox::basisXf () const |
| | transform box space to world space
|
| const AffineXf3f & | MR::DenseBox::basisXfInv () const |
| | transform world space to box space
|
| bool | MR::Dipole::addIfGoodApprox (const Vector3f &q, float betaSq, float &addTo) const |
| void | MR::calcDipoles (Dipoles &dipoles, const AABBTree &tree, const Mesh &mesh) |
| | calculates dipoles for given mesh and AABB-tree
|
| Dipoles | MR::calcDipoles (const AABBTree &tree, const Mesh &mesh) |
| float | MR::calcFastWindingNumber (const Dipoles &dipoles, const AABBTree &tree, const Mesh &mesh, const Vector3f &q, float beta, FaceId skipFace) |
| DirectoryIterator & | MR::DirectoryIterator::operator++ () |
| auto | MR::DirectoryIterator::operator* () const |
| DirectoryRecursiveIterator & | MR::DirectoryRecursiveIterator::operator++ () |
| auto | MR::DirectoryRecursiveIterator::operator* () const |
| std::filesystem::path | MR::findPathWithExtension (const std::filesystem::path &pathWithoutExtension) |
| | given file name without final extension, finds in the same folder an existing file with same stem and any extension
|
| bool | MR::operator!= (const DirectoryIterator &a, const std::filesystem::directory_iterator &b) |
| bool | MR::operator!= (const DirectoryRecursiveIterator &a, const std::filesystem::recursive_directory_iterator &b) |
| VertId | MR::findDirMaxBruteForce (const Vector3f &dir, const VertCoords &points, const VertBitSet *region=nullptr) |
| | finds the point having the largest projection on given direction by traversing all region points
|
| VertId | MR::findDirMaxBruteForce (const Vector2f &dir, const VertCoords2 &points, const VertBitSet *region=nullptr) |
| | finds the point having the largest projection on given direction by traversing all region points
|
| VertId | MR::findDirMaxBruteForce (const Vector3f &dir, const PointCloud &cloud, const VertBitSet *region=nullptr) |
| | finds the point in the cloud having the largest projection on given direction by traversing all valid points
|
| VertId | MR::findDirMaxBruteForce (const Vector3f &dir, const Polyline3 &polyline) |
| | finds the vertex in the polyline having the largest projection on given direction by traversing all valid vertices
|
| VertId | MR::findDirMaxBruteForce (const Vector2f &dir, const Polyline2 &polyline) |
| | finds the vertex in the polyline having the largest projection on given direction by traversing all valid vertices
|
| VertId | MR::findDirMaxBruteForce (const Vector3f &dir, const MeshPart &mp) |
| | finds the vertex in the mesh part having the largest projection on given direction by traversing all (region) faces
|
| VertId | MR::findDirMaxBruteForce (const Vector3f &dir, const MeshVertPart &mp) |
| | finds the vertex in the mesh part having the largest projection on given direction by traversing all (region) vertices
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector3f &dir, const VertCoords &points, const VertBitSet *region=nullptr) |
| | finds the points having the smallest and the largest projections on given direction by traversing all region points
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector2f &dir, const VertCoords2 &points, const VertBitSet *region=nullptr) |
| | finds the points having the smallest and the largest projections on given direction by traversing all region points
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector3f &dir, const PointCloud &cloud, const VertBitSet *region=nullptr) |
| | finds the points in the cloud having the smallest and the largest projections on given direction by traversing all valid points
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector3f &dir, const Polyline3 &polyline) |
| | finds the vertex in the polyline having the smallest and the largest projections on given direction by traversing all valid vertices
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector2f &dir, const Polyline2 &polyline) |
| | finds the vertex in the polyline having the smallest and the largest projections on given direction by traversing all valid vertices
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector3f &dir, const MeshPart &mp) |
| | finds the vertices in the mesh part having the smallest and the largest projections on given direction by traversing all (region) faces
|
| MinMaxArg< float, VertId > | MR::findDirMinMaxBruteForce (const Vector3f &dir, const MeshVertPart &mp) |
| | finds the vertices in the mesh part having the smallest and the largest projections on given direction by traversing all (region) vertices
|
| | MR::DistanceMeasurementObject::DistanceMeasurementObject () |
| | The xf encodes the distance: the origin is one point, and (1,0,0) is another.
|
| | MR::DistanceMeasurementObject::DistanceMeasurementObject (DistanceMeasurementObject &&) noexcept=default |
| DistanceMeasurementObject & | MR::DistanceMeasurementObject::operator= (DistanceMeasurementObject &&) noexcept=default |
| static constexpr const char * | MR::DistanceMeasurementObject::StaticTypeName () noexcept |
| const char * | MR::DistanceMeasurementObject::typeName () const override |
| static constexpr const char * | MR::DistanceMeasurementObject::StaticClassName () noexcept |
| virtual std::string | MR::DistanceMeasurementObject::className () const override |
| static constexpr const char * | MR::DistanceMeasurementObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::DistanceMeasurementObject::classNameInPlural () const override |
| | MR::DistanceMeasurementObject::DistanceMeasurementObject (ProtectedStruct, const DistanceMeasurementObject &obj) |
| | For std::make_shared() in clone().
|
| std::shared_ptr< Object > | MR::DistanceMeasurementObject::clone () const override |
| std::shared_ptr< Object > | MR::DistanceMeasurementObject::shallowClone () const override |
| Vector3f | MR::DistanceMeasurementObject::getWorldPoint () const |
| | Get the starting point in world coordinates.
|
| Vector3f | MR::DistanceMeasurementObject::getLocalPoint () const |
| | Get the starting point in local coordinates.
|
| Vector3f | MR::DistanceMeasurementObject::getWorldDelta () const |
| | The delta from the starting point to the other point.
|
| Vector3f | MR::DistanceMeasurementObject::getLocalDelta () const |
| virtual void | MR::DistanceMeasurementObject::setLocalPoint (const MR::Vector3f &point) |
| | Set the start point in the local coordinates.
|
| virtual void | MR::DistanceMeasurementObject::setLocalDelta (const MR::Vector3f &delta) |
| | Set the delta vector in the local coordinates.
|
| bool | MR::DistanceMeasurementObject::isNegative () const |
| | Whether the distance should be displayed as a negative one.
|
| virtual void | MR::DistanceMeasurementObject::setIsNegative (bool value) |
| DistanceMode | MR::DistanceMeasurementObject::getDistanceMode () const |
| | Whether we should draw the individual X/Y/Z deltas in addition to the distance itself.
|
| virtual void | MR::DistanceMeasurementObject::setDistanceMode (DistanceMode mode) |
| float | MR::DistanceMeasurementObject::computeDistance () const |
| std::vector< std::string > | MR::DistanceMeasurementObject::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| std::size_t | MR::DistanceMeasurementObject::numComparableProperties () const override |
| | Implement ObjectComparableWithReference:
|
| std::string_view | MR::DistanceMeasurementObject::getComparablePropertyName (std::size_t i) const override |
| | i goes up to numComparableProperties(), exclusive.
|
| std::optional< ComparableProperty > | MR::DistanceMeasurementObject::computeComparableProperty (std::size_t i) const override |
| std::optional< ComparisonTolerance > | MR::DistanceMeasurementObject::getComparisonTolerence (std::size_t i) const override |
| void | MR::DistanceMeasurementObject::setComparisonTolerance (std::size_t i, std::optional< ComparisonTolerance > newTolerance) override |
| std::string_view | MR::DistanceMeasurementObject::getComparisonReferenceValueName (std::size_t i) const override |
| | i goes up to numComparisonReferenceValues(), exclusive.
|
| ComparisonReferenceValue | MR::DistanceMeasurementObject::getComparisonReferenceValue (std::size_t i) const override |
| void | MR::DistanceMeasurementObject::setComparisonReferenceValue (std::size_t i, std::optional< ComparisonReferenceValue::Var > value) override |
| | MR::DistanceMeasurementObject::DistanceMeasurementObject (const DistanceMeasurementObject &other)=default |
| void | MR::DistanceMeasurementObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| void | MR::DistanceMeasurementObject::serializeFields_ (Json::Value &root) const override |
| void | MR::DistanceMeasurementObject::deserializeFields_ (const Json::Value &root) override |
| void | MR::DistanceMeasurementObject::setupRenderObject_ () const override |
| void | MR::DistanceMeasurementObject::onWorldXfChanged_ () override |
| | Emits worldXfChangedSignal, but derived classes can add additional behavior to it.
|
| template<class T> |
| T | MR::divRound (T n, T d) |
| template<class T> |
| Vector2< T > | MR::divRound (const Vector2< T > &n, T d) |
| | computes division n/d with rounding of each components to the nearest integer, all signs of n and d are supported
|
| template<class T> |
| Vector3< T > | MR::divRound (const Vector3< T > &n, T d) |
| | computes division n/d with rounding of each components to the nearest integer, all signs of n and d are supported
|
| template<class T> |
| Vector4< T > | MR::divRound (const Vector4< T > &n, T d) |
| | computes division n/d with rounding of each components to the nearest integer, all signs of n and d are supported
|
| | MR::UndirectedEdgeIterator::UndirectedEdgeIterator (const MeshTopology &topology) |
| | creates begin iterator
|
| | MR::UndirectedEdgeIterator::UndirectedEdgeIterator ()=default |
| | creates end iterator
|
| UndirectedEdgeIterator & | MR::UndirectedEdgeIterator::operator++ () |
| UndirectedEdgeId | MR::UndirectedEdgeIterator::operator* () const |
| bool | MR::operator== (const UndirectedEdgeIterator &a, const UndirectedEdgeIterator &b) |
| bool | MR::operator!= (const UndirectedEdgeIterator &a, const UndirectedEdgeIterator &b) |
| IteratorRange< UndirectedEdgeIterator > | MR::undirectedEdges (const MeshTopology &topology) |
| static EdgeLengthMesh | MR::EdgeLengthMesh::fromMesh (const Mesh &mesh) |
| | construct EdgeLengthMesh from an ordinary mesh
|
| float | MR::EdgeLengthMesh::leftCotan (EdgeId e) const |
| float | MR::EdgeLengthMesh::cotan (UndirectedEdgeId ue) const |
| bool | MR::EdgeLengthMesh::isDelone (UndirectedEdgeId ue, float threshold=0) const |
| std::optional< float > | MR::EdgeLengthMesh::edgeLengthAfterFlip (EdgeId e) const |
| bool | MR::EdgeLengthMesh::flipEdge (EdgeId e) |
| bool | MR::VertPathInfo::isStart () const |
| bool | MR::EdgePathsBuilderT< MetricToPenalty >::done () const |
| | returns true if further edge forest growth is impossible
|
| float | MR::EdgePathsBuilderT< MetricToPenalty >::doneDistance () const |
| | returns path length till the next candidate vertex or maximum float value if all vertices have been reached
|
| const VertPathInfoMap & | MR::EdgePathsBuilderT< MetricToPenalty >::vertPathInfoMap () const |
| | gives read access to the map from vertex to path to it
|
| float | MR::TrivialMetricToPenalty::operator() (float metric, VertId) const |
| float | MR::MetricToAStarPenalty::operator() (float metric, VertId v) const |
| | MR::EdgePathsAStarBuilder::EdgePathsAStarBuilder (const Mesh &mesh, VertId target, VertId start) |
| | MR::EdgePathsAStarBuilder::EdgePathsAStarBuilder (const Mesh &mesh, const MeshTriPoint &target, const MeshTriPoint &start) |
| | MR::EdgePoint::EdgePoint ()=default |
| | MR::EdgePoint::EdgePoint (EdgeId e, float a) |
| | MR::EdgePoint::EdgePoint (const MeshTopology &topology, VertId v) |
| | MR::EdgePoint::EdgePoint (const PolylineTopology &topology, VertId v) |
| VertId | MR::EdgePoint::inVertex (const MeshTopology &topology) const |
| | returns valid vertex id if the point is in vertex, otherwise returns invalid id
|
| VertId | MR::EdgePoint::inVertex (const PolylineTopology &topology) const |
| | returns valid vertex id if the point is in vertex, otherwise returns invalid id
|
| VertId | MR::EdgePoint::getClosestVertex (const MeshTopology &topology) const |
| | returns one of two edge vertices, closest to this point
|
| VertId | MR::EdgePoint::getClosestVertex (const PolylineTopology &topology) const |
| | returns one of two edge vertices, closest to this point
|
| bool | MR::EdgePoint::inVertex () const |
| | returns true if the point is in a vertex
|
| void | MR::EdgePoint::moveToClosestVertex () |
| | sets this to the closest end of the edge
|
| bool | MR::EdgePoint::isBd (const MeshTopology &topology, const FaceBitSet *region=nullptr) const |
| | returns true if the point is on the boundary of the region (or for whole mesh if region is nullptr)
|
| bool | MR::EdgePoint::valid () const |
| | consider this valid if the edge ID is valid
|
| | MR::EdgePoint::operator bool () const |
| EdgePoint | MR::EdgePoint::sym () const |
| | represents the same point relative to sym edge in
|
| bool | MR::EdgePoint::operator== (const EdgePoint &rhs) const =default |
| | returns true if two edge-points are equal including equal not-unique representation
|
| bool | MR::same (const MeshTopology &topology, const EdgePoint &lhs, const EdgePoint &rhs) |
| | returns true if two edge-points are equal considering different representations
|
| | MR::EdgePointPair::EdgePointPair ()=default |
| | MR::EdgePointPair::EdgePointPair (EdgePoint ia, EdgePoint ib) |
| bool | MR::EdgePointPair::operator== (const EdgePointPair &rhs) const =default |
| | returns true if two edge-point pairs are equal including equal not-unique representation
|
| | MR::EdgeSegment::EdgeSegment ()=default |
| | MR::EdgeSegment::EdgeSegment (EdgeId e, float a=0.0f, float b=1.0f) |
| EdgePoint | MR::EdgeSegment::edgePointA () const |
| | returns starting EdgePoint
|
| EdgePoint | MR::EdgeSegment::edgePointB () const |
| | returns ending EdgePoint
|
| bool | MR::EdgeSegment::valid () const |
| | returns true if the edge is valid and start point is less than end point
|
| bool | MR::EdgeSegment::operator== (const EdgeSegment &rhs) const =default |
| EdgeSegment | MR::EdgeSegment::sym () const |
| | represents the same segment relative to sym edge in
|
| Expected< Mesh > | MR::embedStructureToTerrain (const Mesh &terrain, const Mesh &structure, const EmbeddedStructureParameters ¶ms) |
| float | MR::EndMillTool::getMinimalCutLength () const |
| | compute the minimal cut length based on the cutter parameters
|
| Mesh | MR::EndMillTool::toMesh (int horizontalResolution=32, int verticalResolution=32) const |
| | create a tool mesh
|
| void | MR::serializeToJson (const EndMillCutter &cutter, Json::Value &root) |
| void | MR::serializeToJson (const EndMillTool &tool, Json::Value &root) |
| Expected< void > | MR::deserializeFromJson (const Json::Value &root, EndMillCutter &cutter) |
| Expected< void > | MR::deserializeFromJson (const Json::Value &root, EndMillTool &tool) |
| void | MR::EnumNeihbourVertices::run (const MeshTopology &topology, VertId start, const VertPredicate &pred) |
| void | MR::EnumNeihbourVertices::run (const MeshTopology &topology, const VertBitSet &start, const VertPredicate &pred) |
| void | MR::EnumNeihbourVertices::run (const MeshTopology &topology, const std::vector< MeshTriPoint > &start, const VertPredicate &pred) |
| VertScalars | MR::computeSpaceDistances (const Mesh &mesh, const PointOnFace &start, float range) |
| VertBitSet | MR::findNeighborVerts (const Mesh &mesh, const PointOnFace &start, float rangeSq) |
| void | MR::EnumNeihbourFaces::run (const MeshTopology &topology, VertId start, const FacePredicate &pred) |
| const char * | MR::asString (ColoringType ct) |
| | returns string representation of enum values
|
| void | MR::expand (const MeshTopology &topology, FaceBitSet ®ion, int hops=1) |
| | adds to the region all faces within given number of hops (stars) from the initial region boundary
|
| FaceBitSet | MR::expand (const MeshTopology &topology, FaceId f, int hops) |
| | returns the region of all faces within given number of hops (stars) from the initial face
|
| void | MR::expand (const MeshTopology &topology, VertBitSet ®ion, int hops=1) |
| | adds to the region all vertices within given number of hops (stars) from the initial region boundary
|
| VertBitSet | MR::expand (const MeshTopology &topology, VertId v, int hops) |
| | returns the region of all vertices within given number of hops (stars) from the initial vertex
|
| void | MR::shrink (const MeshTopology &topology, FaceBitSet ®ion, int hops=1) |
| | removes from the region all faces within given number of hops (stars) from the initial region boundary
|
| void | MR::shrink (const MeshTopology &topology, VertBitSet ®ion, int hops=1) |
| | removes from the region all vertices within given number of hops (stars) from the initial region boundary
|
| FaceBitSet | MR::expandFaces (const MeshTopology &topology, const FaceBitSet ®ion, const UndirectedEdgeBitSet *stopEdges=nullptr) |
| FaceBitSet | MR::shrinkFaces (const MeshTopology &topology, const FaceBitSet ®ion, const UndirectedEdgeBitSet *stopEdges=nullptr) |
| FaceBitSet | MR::getBoundaryFaces (const MeshTopology &topology, const FaceBitSet ®ion) |
| | returns faces from given region that have at least one neighbor face with shared edge not from the region
|
| template<class E> |
| MR_BIND_IGNORE auto | MR::unexpected (E &&e) |
| MR_BIND_IGNORE std::string | MR::stringOperationCanceled () |
| | common message about user termination of an operation
|
| MR_BIND_IGNORE auto | MR::unexpectedOperationCanceled () |
| | returns Expected error with stringOperationCanceled()
|
| MR_BIND_IGNORE std::string | MR::stringUnsupportedFileExtension () |
| | common message about unknown file extension
|
| MR_BIND_IGNORE auto | MR::unexpectedUnsupportedFileExtension () |
| | returns Expected error with stringUnsupportedFileExtension()
|
| MR_BIND_IGNORE std::string | MR::stringUnsupportedFileFormat () |
| | common message prefix about unsupported file format
|
| MR_BIND_IGNORE auto | MR::unexpectedUnsupportedFileFormat () |
| | returns Expected error with stringUnsupportedFileFormat()
|
| IsoLines | MR::extractIsolines (const MeshTopology &topology, const VertMetric &vertValues, const FaceBitSet *region=nullptr) |
| | extracts all iso-lines from given scalar field and iso-value=0
|
| bool | MR::hasAnyIsoline (const MeshTopology &topology, const VertMetric &vertValues, const FaceBitSet *region=nullptr) |
| | quickly returns true if extractIsolines produce not-empty set for the same arguments
|
| IsoLines | MR::extractIsolines (const MeshTopology &topology, const VertScalars &vertValues, float isoValue, const FaceBitSet *region=nullptr) |
| | extracts all iso-lines from given scalar field and iso-value
|
| bool | MR::hasAnyIsoline (const MeshTopology &topology, const VertScalars &vertValues, float isoValue, const FaceBitSet *region=nullptr) |
| | quickly returns true if extractIsolines produce not-empty set for the same arguments
|
| PlaneSections | MR::extractPlaneSections (const MeshPart &mp, const Plane3f &plane, UseAABBTree u=UseAABBTree::Yes) |
| | extracts all plane sections of given mesh
|
| bool | MR::hasAnyPlaneSection (const MeshPart &mp, const Plane3f &plane, UseAABBTree u=UseAABBTree::Yes) |
| | quickly returns true if extractPlaneSections produce not-empty set for the same arguments
|
| PlaneSections | MR::extractXYPlaneSections (const MeshPart &mp, float zLevel, UseAABBTree u=UseAABBTree::Yes) |
| | extracts all sections of given mesh with the plane z=zLevel
|
| bool | MR::hasAnyXYPlaneSection (const MeshPart &mp, float zLevel, UseAABBTree u=UseAABBTree::Yes) |
| | quickly returns true if extractXYPlaneSections produce not-empty set for the same arguments
|
| std::vector< LineSegm3f > | MR::findTriangleSectionsByXYPlane (const MeshPart &mp, float zLevel, std::vector< FaceId > *faces=nullptr, UseAABBTree u=UseAABBTree::Yes) |
| PlaneSection | MR::trackSection (const MeshPart &mp, const MeshTriPoint &start, MeshTriPoint &end, const Vector3f &direction, float distance) |
| Expected< PlaneSection > | MR::trackSection (const MeshPart &mp, const MeshTriPoint &start, const MeshTriPoint &end, const Vector3f &planePoint, bool ccw) |
| bool | MR::isConsistentlyOriented (const MeshTopology &topology, const IsoLine &isoline) |
| FaceBitSet | MR::getCrossedFaces (const MeshTopology &topology, const IsoLine &isoline) |
| | for a consistently oriented isoline, returns all faces it goes inside
|
| Contour2f | MR::planeSectionToContour2f (const Mesh &mesh, const PlaneSection §ion, const AffineXf3f &meshToPlane) |
| | converts PlaneSections in 2D contours by computing coordinate of each point, applying given xf to it, and retaining only x and y
|
| Contours2f | MR::planeSectionsToContours2f (const Mesh &mesh, const PlaneSections §ions, const AffineXf3f &meshToPlane) |
| std::optional< FaceScalars > | MR::calcFaceDistances (const MeshTopology &topology, const EdgeMetric &metric, const FaceBitSet &starts, const FaceDistancesSettings &settings={}) |
| virtual | MR::IFastWindingNumber::~IFastWindingNumber ()=default |
| virtual Expected< void > | MR::IFastWindingNumber::calcFromVector (std::vector< float > &res, const std::vector< Vector3f > &points, float beta, FaceId skipFace={}, const ProgressCallback &cb={})=0 |
| | calculates winding numbers in the points from given vector
|
| virtual Expected< void > | MR::IFastWindingNumber::calcSelfIntersections (FaceBitSet &res, float beta, const ProgressCallback &cb={})=0 |
| | calculates winding numbers for all centers of mesh's triangles. if winding number is less than 0 or greater then 1, that face is marked as self-intersected
|
| virtual Expected< void > | MR::IFastWindingNumber::calcFromGrid (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, const ProgressCallback &cb={})=0 |
| | calculates winding numbers in each point from a three-dimensional grid
|
| virtual Expected< void > | MR::IFastWindingNumber::calcFromGridWithDistances (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, const ProgressCallback &cb)=0 |
| | calculates distances with the sign obtained from generalized winding number in each point from a three-dimensional grid; if sqr(res) < minDistSq or sqr(res) >= maxDistSq, then NaN is returned for such point
|
| | MR::FastWindingNumber::FastWindingNumber (const Mesh &mesh) |
| Expected< void > | MR::FastWindingNumber::calcFromVector (std::vector< float > &res, const std::vector< Vector3f > &points, float beta, FaceId skipFace, const ProgressCallback &cb) override |
| | see methods' descriptions in IFastWindingNumber
|
| Expected< void > | MR::FastWindingNumber::calcSelfIntersections (FaceBitSet &res, float beta, const ProgressCallback &cb) override |
| | calculates winding numbers for all centers of mesh's triangles. if winding number is less than 0 or greater then 1, that face is marked as self-intersected
|
| Expected< void > | MR::FastWindingNumber::calcFromGrid (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, const ProgressCallback &cb) override |
| | calculates winding numbers in each point from a three-dimensional grid
|
| float | MR::FastWindingNumber::calcWithDistances (const Vector3f &p, const DistanceToMeshOptions &options) |
| Expected< void > | MR::FastWindingNumber::calcFromGridWithDistances (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, const ProgressCallback &cb) override |
| | calculates distances with the sign obtained from generalized winding number in each point from a three-dimensional grid; if sqr(res) < minDistSq or sqr(res) >= maxDistSq, then NaN is returned for such point
|
| virtual | MR::IFastWindingNumberByParts::~IFastWindingNumberByParts ()=default |
| virtual Expected< void > | MR::IFastWindingNumberByParts::calcFromGridByParts (GridByPartsFunc resFunc, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, int layerOverlap, const ProgressCallback &cb)=0 |
| | calculates winding numbers in each point from a three-dimensional grid
|
| virtual Expected< void > | MR::IFastWindingNumberByParts::calcFromGridWithDistancesByParts (GridByPartsFunc resFunc, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, int layerOverlap, const ProgressCallback &cb)=0 |
| | calculates distances with the sign obtained from generalized winding number in each point from a three-dimensional grid; if sqr(res) < minDistSq or sqr(res) >= maxDistSq, then NaN is returned for such point
|
| template<typename F> |
| bool | MR::forEachObjectKind (F &&func) |
| | Calls func, which is ( auto kind ) -> bool, for each known object kind. If it returns true, stops immediately and also returns true.
|
| template<typename ... P> |
| std::shared_ptr< VisualObject > | MR::makeObjectFromEnum (FeaturesObjectKind kind, P &&... params) |
| | Allocates an object of type kind, passing params... to its constructor.
|
| template<typename ... P> |
| std::shared_ptr< VisualObject > | MR::makeObjectFromClassName (std::string className, P &&... params) |
| | Allocates an object of type kind, passing params... to its constructor.
|
| std::optional< Vector3f > | MR::getFeatureNormal (FeatureObject *feature) |
| | Using forEachObjectKind the template collects a list of features for which the method ...->getNormal() is available.
|
| std::optional< Vector3f > | MR::getFeatureDirection (FeatureObject *feature) |
| | Using forEachObjectKind the template collects a list of features for which the method ...->getDirection() is available.
|
| std::unordered_set< std::string > | MR::getFeaturesTypeWithNormals () |
| | Try to getNormal from specific feature using forEachObjectKind template. Returns nullopt is ...->getNormal() is not available for given feature type.
|
| std::unordered_set< std::string > | MR::getFeaturesTypeWithDirections () |
| | Try to getDirection from specific feature using forEachObjectKind template. Returns nullopt is ...->getDirection() is not available for given feature type.
|
| template<typename T, typename C, typename SetterFunc> |
| | MR::FeatureObjectSharedProperty::FeatureObjectSharedProperty (std::string name, FeaturePropertyKind kind, T(C::*m_getter)(ViewportId) const, SetterFunc m_setter) |
| static constexpr const char * | MR::FeatureObject::StaticTypeName () noexcept |
| virtual const char * | MR::FeatureObject::typeName () const override |
| static constexpr const char * | MR::FeatureObject::StaticClassName () noexcept |
| virtual std::string | MR::FeatureObject::className () const override |
| static constexpr const char * | MR::FeatureObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::FeatureObject::classNameInPlural () const override |
| virtual const std::vector< FeatureObjectSharedProperty > & | MR::FeatureObject::getAllSharedProperties () const =0 |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| bool | MR::FeatureObject::supportsVisualizeProperty (AnyVisualizeMaskEnum type) const override |
| | Returns true if this class supports the property type. Otherwise passing it to the functions below is illegal.
|
| AllVisualizeProperties | MR::FeatureObject::getAllVisualizeProperties () const override |
| | get all visualize properties masks
|
| const ViewportMask & | MR::FeatureObject::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| | returns mask of viewports where given property is set
|
| void | MR::FeatureObject::serializeFields_ (Json::Value &root) const override |
| void | MR::FeatureObject::deserializeFields_ (const Json::Value &root) override |
| virtual FeatureObjectProjectPointResult | MR::FeatureObject::projectPoint (const Vector3f &point, ViewportId id={}) const =0 |
| std::optional< Vector3f > | MR::FeatureObject::getNormal (const Vector3f &point) const |
| void | MR::FeatureObject::setXf (const AffineXf3f &xf, ViewportId id={}) override |
| void | MR::FeatureObject::resetXf (ViewportId id={}) override |
| | forgets specific transform in given viewport (or forgets all specific transforms for {} input)
|
| virtual Vector3f | MR::FeatureObject::getBasePoint (ViewportId id={}) const |
| | Returns point considered as base for the feature.
|
| Matrix3f | MR::FeatureObject::getRotationMatrix (ViewportId id={}, bool *isDef=nullptr) const |
| Matrix3f | MR::FeatureObject::getScaleShearMatrix (ViewportId id={}, bool *isDef=nullptr) const |
| const Color & | MR::FeatureObject::getDecorationsColor (bool selected, ViewportId viewportId={}, bool *isDef=nullptr) const |
| virtual void | MR::FeatureObject::setDecorationsColor (const Color &color, bool selected, ViewportId viewportId={}) |
| virtual const ViewportProperty< Color > & | MR::FeatureObject::getDecorationsColorForAllViewports (bool selected) const |
| virtual void | MR::FeatureObject::setDecorationsColorForAllViewports (ViewportProperty< Color > val, bool selected) |
| virtual float | MR::FeatureObject::getPointSize () const |
| | Point size and line width, for primary rendering rather than subfeatures.
|
| virtual float | MR::FeatureObject::getLineWidth () const |
| virtual void | MR::FeatureObject::setPointSize (float pointSize) |
| virtual void | MR::FeatureObject::setLineWidth (float lineWidth) |
| virtual float | MR::FeatureObject::getSubfeaturePointSize () const |
| | Point size and line width, for subfeatures rather than primary rendering.
|
| virtual float | MR::FeatureObject::getSubfeatureLineWidth () const |
| virtual void | MR::FeatureObject::setSubfeaturePointSize (float pointSize) |
| virtual void | MR::FeatureObject::setSubfeatureLineWidth (float lineWidth) |
| virtual float | MR::FeatureObject::getMainFeatureAlpha () const |
| | Per-component alpha multipliers. The global alpha is multiplied by thise.
|
| virtual float | MR::FeatureObject::getSubfeatureAlphaPoints () const |
| virtual float | MR::FeatureObject::getSubfeatureAlphaLines () const |
| virtual float | MR::FeatureObject::getSubfeatureAlphaMesh () const |
| virtual void | MR::FeatureObject::setMainFeatureAlpha (float alpha) |
| virtual void | MR::FeatureObject::setSubfeatureAlphaPoints (float alpha) |
| virtual void | MR::FeatureObject::setSubfeatureAlphaLines (float alpha) |
| virtual void | MR::FeatureObject::setSubfeatureAlphaMesh (float alpha) |
| | MR::FeatureObject::FeatureObject (int numDimensions) |
| | numDimensions is 0 for points, 1 for lines, 2 for surface meshes. We don't use 3 at the moment.
|
| void | MR::FeatureObject::setAllVisualizeProperties_ (const AllVisualizeProperties &properties, std::size_t &pos) override |
| Expected< AffineXf3f > | MR::refineFeatureObject (const FeatureObject &featObj, const Mesh &mesh, const RefineParameters ¶ms={}) |
| | Recalculate the feature object's position so it would better fit with the given mesh.
|
| Expected< AffineXf3f > | MR::refineFeatureObject (const FeatureObject &featObj, const PointCloud &pointCloud, const RefineParameters ¶ms={}) |
| | Recalculate the feature object's position so it would better fit with the given point cloud.
|
| ConeSegment | MR::Features::Primitives::Plane::intersectWithPlane (const Plane &other) const |
| | Returns an infinite line, with the center in a sane location.
|
| Sphere | MR::Features::Primitives::Plane::intersectWithLine (const ConeSegment &line) const |
| bool | MR::Features::Primitives::ConeSegment::isZeroRadius () const |
| bool | MR::Features::Primitives::ConeSegment::isCircle () const |
| float | MR::Features::Primitives::ConeSegment::length () const |
| | Returns the length. Can be infinite.
|
| Sphere | MR::Features::Primitives::ConeSegment::centerPoint () const |
| ConeSegment | MR::Features::Primitives::ConeSegment::extendToInfinity (bool negative) const |
| | Extends the object to infinity in one direction. The radius in the extended direction becomes equal to the radius in the opposite direction.
|
| ConeSegment | MR::Features::Primitives::ConeSegment::extendToInfinity () const |
| ConeSegment | MR::Features::Primitives::ConeSegment::untruncateCone () const |
| | Untruncates a truncated cone. If it's not a cone at all, returns the object unchanged and triggers an assertion.
|
| ConeSegment | MR::Features::Primitives::ConeSegment::axis () const |
| | Returns a finite axis. For circles, you might want to immediately extendToInfinity() it.
|
| Sphere | MR::Features::Primitives::ConeSegment::basePoint (bool negative) const |
| | Returns a center of one of the two base circles.
|
| Plane | MR::Features::Primitives::ConeSegment::basePlane (bool negative) const |
| | Returns one of the two base planes.
|
| ConeSegment | MR::Features::Primitives::ConeSegment::baseCircle (bool negative) const |
| | Returns one of the two base circles.
|
| Primitives::Sphere | MR::Features::toPrimitive (const Vector3f &point) |
| | Those map various MR types to our primitives. Some of those are identity functions.
|
| Primitives::Sphere | MR::Features::toPrimitive (const Sphere3f &sphere) |
| Primitives::ConeSegment | MR::Features::toPrimitive (const Line3f &line) |
| Primitives::ConeSegment | MR::Features::toPrimitive (const LineSegm3f &segm) |
| Primitives::ConeSegment | MR::Features::toPrimitive (const Cylinder3f &cyl) |
| Primitives::ConeSegment | MR::Features::toPrimitive (const Cone3f &cone) |
| Primitives::ConeSegment | MR::Features::primitiveCircle (const Vector3f &point, const Vector3f &normal, float rad) |
| | normal doesn't need to be normalized.
|
| Primitives::ConeSegment | MR::Features::primitiveCylinder (const Vector3f &a, const Vector3f &b, float rad) |
| | a and b are centers of the sides.
|
| Primitives::ConeSegment | MR::Features::primitiveCone (const Vector3f &a, const Vector3f &b, float rad) |
| | a is the center of the base, b is the pointy end.
|
| std::optional< Primitives::Variant > | MR::Features::primitiveFromObject (const Object &object) |
| | Returns null if the object type is unknown. This overload ignores the parent xf.
|
| std::optional< Primitives::Variant > | MR::Features::primitiveFromObjectWithWorldXf (const Object &object) |
| | Returns null if the object type is unknown. This overload respects the parent's worldXf().
|
| std::shared_ptr< FeatureObject > | MR::Features::primitiveToObject (const Primitives::Variant &primitive, float infiniteExtent) |
| Primitives::Sphere | MR::Features::transformPrimitive (const AffineXf3f &xf, const Primitives::Sphere &primitive) |
| Primitives::Plane | MR::Features::transformPrimitive (const AffineXf3f &xf, const Primitives::Plane &primitive) |
| Primitives::ConeSegment | MR::Features::transformPrimitive (const AffineXf3f &xf, const Primitives::ConeSegment &primitive) |
| Primitives::Variant | MR::Features::transformPrimitive (const AffineXf3f &xf, const Primitives::Variant &primitive) |
| | MR::Features::MeasureResult::BasicPart::operator bool () const |
| Vector3f | MR::Features::MeasureResult::Distance::closestPointFor (bool b) const |
| float | MR::Features::MeasureResult::Distance::distanceAlongAxis (int i) const |
| float | MR::Features::MeasureResult::Distance::distanceAlongAxisAbs (int i) const |
| Vector3f | MR::Features::MeasureResult::Angle::pointFor (bool b) const |
| Vector3f | MR::Features::MeasureResult::Angle::dirFor (bool b) const |
| | ^
|
| bool | MR::Features::MeasureResult::Angle::isSurfaceNormalFor (bool b) const |
| float | MR::Features::MeasureResult::Angle::computeAngleInRadians () const |
| void | MR::Features::MeasureResult::swapObjects () |
| | Modifies the object to swap A and B;.
|
| std::string_view | MR::Features::toString (MeasureResult::Status status) |
| | MeasureResult::Status enum to string.
|
| std::string | MR::Features::Traits::Unary< Primitives::Sphere >::name (const Primitives::Sphere &prim) const |
| std::string | MR::Features::Traits::Unary< Primitives::ConeSegment >::name (const Primitives::ConeSegment &prim) const |
| std::string | MR::Features::Traits::Unary< Primitives::Plane >::name (const Primitives::Plane &prim) const |
| MeasureResult | MR::Features::Traits::Binary< Primitives::Sphere, Primitives::Sphere >::measure (const Primitives::Sphere &a, const Primitives::Sphere &b) const |
| MeasureResult | MR::Features::Traits::Binary< Primitives::ConeSegment, Primitives::Sphere >::measure (const Primitives::ConeSegment &a, const Primitives::Sphere &b) const |
| MeasureResult | MR::Features::Traits::Binary< Primitives::Plane, Primitives::Sphere >::measure (const Primitives::Plane &a, const Primitives::Sphere &b) const |
| MeasureResult | MR::Features::Traits::Binary< Primitives::ConeSegment, Primitives::ConeSegment >::measure (const Primitives::ConeSegment &a, const Primitives::ConeSegment &b) const |
| MeasureResult | MR::Features::Traits::Binary< Primitives::Plane, Primitives::ConeSegment >::measure (const Primitives::Plane &a, const Primitives::ConeSegment &b) const |
| MeasureResult | MR::Features::Traits::Binary< Primitives::Plane, Primitives::Plane >::measure (const Primitives::Plane &a, const Primitives::Plane &b) const |
| template<typename T> |
| std::string | MR::Features::name (const T &primitive) |
| | Get name of a Primitives::... class (can depend on its parameters).
|
| std::string | MR::Features::name (const Primitives::Variant &var) |
| | Same but for a variant.
|
template<typename A, typename B>
requires MeasureSupported<A, B> |
| MeasureResult | MR::Features::measure (const A &a, const B &b) |
| | Measures stuff between two primitives. (Two types from Primitives::....)
|
| template<typename B> |
| MeasureResult | MR::Features::measure (const Primitives::Variant &a, const B &b) |
| | Same, but with a variant as the first argument.
|
| template<typename A> |
| MeasureResult | MR::Features::measure (const A &a, const Primitives::Variant &b) |
| | Same, but with a variant as the second argument.
|
| MeasureResult | MR::Features::measure (const Primitives::Variant &a, const Primitives::Variant &b) |
| | Same, but with variants as both argument.
|
| | MR::FewSmallest< T >::FewSmallest () |
| | MR::FewSmallest< T >::FewSmallest (size_t maxElms) |
| | configure the object to store at most given number of elements
|
| void | MR::FewSmallest< T >::reset (size_t maxElms) |
| | clears the content and reconfigure the object to store at most given number of elements
|
| size_t | MR::FewSmallest< T >::maxElms () const |
| | returns the maximum number of elements to be stored here
|
| bool | MR::FewSmallest< T >::empty () const |
| | returns whether the container is currently empty
|
| size_t | MR::FewSmallest< T >::size () const |
| | returns current number of stored element
|
| bool | MR::FewSmallest< T >::full () const |
| | returns whether we have already maximum number of elements stored
|
| const std::vector< T > & | MR::FewSmallest< T >::get () const |
| | returns the smallest elements found so far
|
| const T & | MR::FewSmallest< T >::top () const |
| | returns the largest among stored smallest elements
|
| const T & | MR::FewSmallest< T >::topOr (const T &emptyRes) const |
| | returns the largest among stored smallest elements or given element if this is empty
|
| void | MR::FewSmallest< T >::push (T t) |
| | considers one more element, storing it if it is within the smallest
|
| void | MR::FewSmallest< T >::clear () |
| | removes all stored elements
|
| MR_BIND_IGNORE FILE * | MR::fopen (const std::filesystem::path &filename, const char *mode) |
| | this version of fopen unlike std::fopen supports unicode file names on Windows
|
| | MR::File::File ()=default |
| | MR::File::File (const File &)=delete |
| | MR::File::File (File &&r) |
| | MR::File::File (const std::filesystem::path &filename, const char *mode) |
| | MR::File::~File () |
| File & | MR::File::operator= (const File &)=delete |
| File & | MR::File::operator= (File &&r) |
| | MR::File::operator FILE * () const |
| FILE * | MR::File::open (const std::filesystem::path &filename, const char *mode) |
| void | MR::File::close () |
| void | MR::File::detach () |
| | the user takes control over the handle
|
| void | MR::File::attach (FILE *h) |
| | gives control over the handle to this object
|
| FaceBitSet | MR::fillContourLeft (const MeshTopology &topology, const EdgePath &contour) |
| FaceBitSet | MR::fillContourLeft (const MeshTopology &topology, const std::vector< EdgePath > &contours) |
| Expected< void > | MR::fillContours2D (Mesh &mesh, const std::vector< EdgeId > &holeRepresentativeEdges) |
| | fill holes with border in same plane (i.e. after cut by plane)
|
| AffineXf3f | MR::getXfFromOxyPlane (const Contours3f &contours) |
| AffineXf3f | MR::getXfFromOxyPlane (const Mesh &mesh, const std::vector< EdgePath > &paths) |
| Expected< void > | MR::fillPlanarHole (ObjectMeshData &data, std::vector< EdgeLoop > &holeContours) |
| FaceBitSet | MR::fillHoleNicely (Mesh &mesh, EdgeId holeEdge, const FillHoleNicelySettings &settings) |
| | fills a hole in mesh specified by one of its edge, optionally subdivides new patch on smaller triangles, optionally make smooth connection with existing triangles outside the hole
|
| FaceBitSet | MR::stitchHolesNicely (Mesh &mesh, EdgeId hole0Edge, EdgeId hole1Edge, const StitchHolesNicelySettings &settings) |
| void | MR::filterCreaseEdges (const Mesh &mesh, UndirectedEdgeBitSet &creaseEdges, float critLength, bool filterComponents=true, bool filterBranches=false) |
| Expected< FaceBitSet > | MR::SelfIntersections::getFaces (const Mesh &mesh, bool touchIsIntersection=true, ProgressCallback cb={}) |
| | Find all self-intersections faces component-wise.
|
| Expected< void > | MR::SelfIntersections::fix (Mesh &mesh, const Settings &settings) |
| | Finds and fixes self-intersections per component:
|
| | MR::FreeFormDeformer::FreeFormDeformer (VertCoords &coords, const VertBitSet &valid) |
| | Only set mesh ref.
|
| | MR::FreeFormDeformer::FreeFormDeformer (Mesh &mesh, const VertBitSet *region=nullptr) |
| void | MR::FreeFormDeformer::init (const Vector3i &resolution=Vector3i::diagonal(2), const Box3f &initialBox=Box3f()) |
| void | MR::FreeFormDeformer::setRefGridPointPosition (const Vector3i &coordOfPointInGrid, const Vector3f &newPos) |
| | Updates ref grid point position.
|
| const Vector3f & | MR::FreeFormDeformer::getRefGridPointPosition (const Vector3i &coordOfPointInGrid) const |
| | Gets ref grid point position.
|
| void | MR::FreeFormDeformer::apply () const |
| Vector3f | MR::FreeFormDeformer::applySinglePoint (const Vector3f &point) const |
| | Apply updated grid to given point.
|
| int | MR::FreeFormDeformer::getIndex (const Vector3i &coordOfPointInGrid) const |
| | Get one dimension index by grid coord.
|
| Vector3i | MR::FreeFormDeformer::getCoord (int index) const |
| | Get grid coord by index.
|
| const std::vector< Vector3f > & | MR::FreeFormDeformer::getAllRefGridPositions () const |
| void | MR::FreeFormDeformer::setAllRefGridPositions (const std::vector< Vector3f > &refPoints) |
| const Vector3i & | MR::FreeFormDeformer::getResolution () const |
| | MR::FreeFormBestFit::FreeFormBestFit (const Box3d &box, const Vector3i &resolution=Vector3i::diagonal(2)) |
| | initialize the class, compute cached values and reserve space for matrices
|
| void | MR::FreeFormBestFit::addPair (const Vector3d &src, const Vector3d &tgt, double w=1.0) |
| | add pair of source and target point to accumulator
|
| void | MR::FreeFormBestFit::addPair (const Vector3f &src, const Vector3f &tgt, float w=1.0f) |
| void | MR::FreeFormBestFit::addOther (const FreeFormBestFit &other) |
| | adds other instance of FreeFormBestFit if it has same ref grid
|
| void | MR::FreeFormBestFit::setStabilizer (double stabilizer) |
| double | MR::FreeFormBestFit::getStabilizer () const |
| std::vector< Vector3f > | MR::FreeFormBestFit::findBestDeformationReferenceGrid () |
| | finds best grid points positions to align source points to target points
|
| std::vector< Vector3f > | MR::makeFreeFormOriginGrid (const Box3f &box, const Vector3i &resolution) |
| | Returns positions of grid points in given box with given resolution.
|
| std::vector< Vector3f > | MR::findBestFreeformDeformation (const Box3f &box, const std::vector< Vector3f > &source, const std::vector< Vector3f > &target, const Vector3i &resolution=Vector3i::diagonal(2), const AffineXf3f *samplesToBox=nullptr) |
| constexpr | MR::FunctionRef< R(Args...)>::FunctionRef () noexcept=delete |
| constexpr | MR::FunctionRef< R(Args...)>::FunctionRef (const FunctionRef &rhs) noexcept=default |
| template<typename F, std::enable_if_t< std::is_invocable_r_v< R, F &&, Args... > > * = nullptr> |
| constexpr | MR::FunctionRef< R(Args...)>::FunctionRef (F &&f) noexcept |
| constexpr FunctionRef & | MR::FunctionRef< R(Args...)>::operator= (const FunctionRef &rhs) noexcept=default |
| template<typename F, std::enable_if_t< std::is_invocable_r_v< R, F &&, Args... > > * = nullptr> |
| constexpr FunctionRef & | MR::FunctionRef< R(Args...)>::operator= (F &&f) noexcept |
| constexpr void | MR::FunctionRef< R(Args...)>::swap (FunctionRef &rhs) noexcept |
| R | MR::FunctionRef< R(Args...)>::operator() (Args... args) const |
| template<typename R, typename... Args> |
| constexpr void | MR::swap (FunctionRef< R(Args...)> &lhs, FunctionRef< R(Args...)> &rhs) noexcept |
| bool | MR::GcodeProcessor::MoveAction::valid () const |
| | return true if operation was parsed without warnings
|
| | MR::GcodeProcessor::MoveAction::operator bool () const |
| void | MR::GcodeProcessor::reset () |
| | reset internal states
|
| void | MR::GcodeProcessor::setGcodeSource (const GcodeSource &gcodeSource) |
| | set g-code source
|
| std::vector< MoveAction > | MR::GcodeProcessor::processSource () |
| | process all lines g-code source and generate corresponding move actions
|
| MoveAction | MR::GcodeProcessor::processLine (const std::string_view &line, std::vector< Command > &externalStorage) |
| void | MR::GcodeProcessor::setCNCMachineSettings (const CNCMachineSettings &settings) |
| | settings
|
| const CNCMachineSettings & | MR::GcodeProcessor::getCNCMachineSettings () |
| VertId | MR::Graph::EndVertices::otherEnd (VertId a) const |
| | v0 < v1
|
| void | MR::Graph::EndVertices::replaceEnd (VertId what, VertId with) |
| auto | MR::Graph::EndVertices::operator<=> (const EndVertices &) const =default |
| void | MR::Graph::construct (NeighboursPerVertex neighboursPerVertex, EndsPerEdge endsPerEdge) |
| | constructs the graph from all valid vertices and edges
|
| size_t | MR::Graph::vertSize () const |
| | returns the number of vertex records, including invalid ones
|
| const VertBitSet & | MR::Graph::validVerts () const |
| | returns all valid vertices in the graph
|
| bool | MR::Graph::valid (VertId v) const |
| | returns true if given vertex is valid
|
| size_t | MR::Graph::edgeSize () const |
| | returns the number of edge records, including invalid ones
|
| const EdgeBitSet & | MR::Graph::validEdges () const |
| | returns all valid edges in the graph
|
| bool | MR::Graph::valid (EdgeId e) const |
| | returns true if given edge is valid
|
| const Neighbours & | MR::Graph::neighbours (VertId v) const |
| | returns all edges adjacent to given vertex
|
| const EndVertices & | MR::Graph::ends (EdgeId e) const |
| | returns the ends of given edge
|
| EdgeId | MR::Graph::findEdge (VertId a, VertId b) const |
| | finds and returns edge between vertices a and b; returns invalid edge otherwise
|
| bool | MR::Graph::areNeighbors (VertId a, VertId b) const |
| | returns true if the vertices a and b are neighbors
|
| void | MR::Graph::merge (VertId remnant, VertId dead, std::function< void(EdgeId remnant, EdgeId dead)> onMergeEdges) |
| bool | MR::Graph::checkValidity () const |
| | verifies that all internal data structures are valid
|
| std::optional< VertBitSet > | MR::verticesGridSampling (const MeshPart &mp, float voxelSize, const ProgressCallback &cb={}) |
| std::optional< VertBitSet > | MR::pointGridSampling (const PointCloudPart &pcp, float voxelSize, const ProgressCallback &cb={}) |
| std::optional< MultiObjsSamples > | MR::multiModelGridSampling (const Vector< ModelPointsData, ObjId > &models, float voxelSize, const ProgressCallback &cb={}) |
| | MR::Histogram::Histogram ()=default |
| | MR::Histogram::Histogram (float min, float max, size_t size) |
| | Initialize histogram with minimum and maximum values, and number of bins.
|
| void | MR::Histogram::addSample (float sample, size_t count=1) |
| | Adds sample to corresponding bin.
|
| void | MR::Histogram::addHistogram (const Histogram &hist) |
| | Adds bins of input hist to this.
|
| const std::vector< size_t > & | MR::Histogram::getBins () const |
| | Gets bins.
|
| float | MR::Histogram::getMin () const |
| | Gets minimum value of histogram.
|
| float | MR::Histogram::getMax () const |
| | Gets maximum value of histogram.
|
| size_t | MR::Histogram::getBinId (float sample) const |
| | Gets id of bin that inherits sample.
|
| std::pair< float, float > | MR::Histogram::getBinMinMax (size_t binId) const |
| | Gets minimum and maximum of diapason inherited by bin.
|
| size_t | MR::Histogram::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| virtual | MR::HistoryAction::~HistoryAction ()=default |
| virtual std::string | MR::HistoryAction::name () const =0 |
| virtual void | MR::HistoryAction::action (Type actionType)=0 |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::HistoryAction::heapBytes () const =0 |
| | returns the amount of memory this object occupies on heap
|
| std::pair< bool, int > | MR::filterHistoryActionsVector (HistoryActionsVector &historyVector, HistoryStackFilter filteringCondition, size_t firstRedoIndex=0, bool deepFiltering=true) |
| | Remove actions from history actions vector that match the condition.
|
| | MR::IPointPairs::IPointPairs ()=default |
| | required to declare explicitly to avoid warnings
|
| | MR::IPointPairs::IPointPairs (const IPointPairs &)=default |
| IPointPairs & | MR::IPointPairs::operator= (const IPointPairs &)=default |
| | MR::IPointPairs::IPointPairs (IPointPairs &&) noexcept=default |
| IPointPairs & | MR::IPointPairs::operator= (IPointPairs &&) noexcept=default |
| virtual | MR::IPointPairs::~IPointPairs ()=default |
| virtual const ICPPairData & | MR::IPointPairs::operator[] (size_t) const =0 |
| virtual ICPPairData & | MR::IPointPairs::operator[] (size_t)=0 |
| virtual size_t | MR::IPointPairs::size () const =0 |
| virtual const ICPPairData & | MR::PointPairs::operator[] (size_t idx) const override |
| virtual ICPPairData & | MR::PointPairs::operator[] (size_t idx) override |
| virtual size_t | MR::PointPairs::size () const override |
| size_t | MR::getNumSamples (const IPointPairs &pairs) |
| | returns the number of samples able to form pairs
|
| size_t | MR::getNumActivePairs (const IPointPairs &pairs) |
| | computes the number of active pairs
|
| float | MR::NumSum::rootMeanSqF () const |
| NumSum | MR::getSumSqDistToPoint (const IPointPairs &pairs, std::optional< double > inaccuracy={}) |
| NumSum | MR::getSumSqDistToPlane (const IPointPairs &pairs, std::optional< double > inaccuracy={}) |
| float | MR::getMeanSqDistToPoint (const IPointPairs &pairs) |
| | computes root-mean-square deviation between points
|
| float | MR::getMeanSqDistToPlane (const IPointPairs &pairs) |
| | computes root-mean-square deviation from points to target planes
|
| std::string | MR::getICPStatusInfo (int iterations, ICPExitType exitType) |
| | returns status info string
|
| AffineXf3d | MR::getAligningXf (const PointToPlaneAligningTransform &p2pl, ICPMode mode, float angleLimit, float scaleLimit, const Vector3f &fixedRotationAxis) |
| | given prepared (p2pl) object, finds the best transformation from it of given type with given limitations on rotation angle and global scale
|
| size_t | MR::deactivateFarPairs (IPointPairs &pairs, float maxDistSq) |
| | reset active bit if pair distance is further than maxDistSq
|
| void | MR::updatePointPairs (PointPairs &pairs, const MeshOrPointsXf &src, const MeshOrPointsXf &tgt, float cosThreshold, float distThresholdSq, bool mutualClosest) |
| | in each pair updates the target data and performs basic filtering (activation)
|
| | MR::ICP::ICP (const MeshOrPoints &flt, const MeshOrPoints &ref, const AffineXf3f &fltXf, const AffineXf3f &refXf, const VertBitSet &fltSamples={}, const VertBitSet &refSamples={}) |
| | MR::ICP::ICP (const MeshOrPointsXf &flt, const MeshOrPointsXf &ref, const VertBitSet &fltSamples={}, const VertBitSet &refSamples={}) |
| | MR::ICP::ICP (const MeshOrPoints &flt, const MeshOrPoints &ref, const AffineXf3f &fltXf, const AffineXf3f &refXf, float samplingVoxelSize) |
| | MR::ICP::ICP (const MeshOrPointsXf &flt, const MeshOrPointsXf &ref, float samplingVoxelSize) |
| void | MR::ICP::setParams (const ICPProperties &prop) |
| | tune algorithm params before run calculateTransformation()
|
| void | MR::ICP::setCosineLimit (const float cos) |
| void | MR::ICP::setDistanceLimit (const float dist) |
| void | MR::ICP::setBadIterCount (const int iter) |
| void | MR::ICP::setFarDistFactor (const float factor) |
| void | MR::ICP::setFltSamples (const VertBitSet &fltSamples) |
| | select pairs with origin samples on floating object
|
| void | MR::ICP::sampleFltPoints (float samplingVoxelSize) |
| void | MR::ICP::setRefSamples (const VertBitSet &refSamples) |
| | select pairs with origin samples on reference object
|
| void | MR::ICP::sampleRefPoints (float samplingVoxelSize) |
| void | MR::ICP::samplePoints (float samplingVoxelSize) |
| | select pairs with origin samples on both objects
|
| MR_BIND_IGNORE void | MR::ICP::recomputeBitSet (float fltSamplingVoxelSize) |
| void | MR::ICP::setXfs (const AffineXf3f &fltXf, const AffineXf3f &refXf) |
| | sets to-world transformations both for floating and reference objects
|
| void | MR::ICP::setFloatXf (const AffineXf3f &fltXf) |
| | sets to-world transformation for the floating object
|
| AffineXf3f | MR::ICP::autoSelectFloatXf () |
| void | MR::ICP::updatePointPairs () |
| | recompute point pairs after manual change of transformations or parameters
|
| const ICPProperties & | MR::ICP::getParams () const |
| std::string | MR::ICP::getStatusInfo () const |
| size_t | MR::ICP::getNumSamples () const |
| | returns status info string
|
| size_t | MR::ICP::getNumActivePairs () const |
| | computes the number of active point pairs
|
| float | MR::ICP::getMeanSqDistToPoint () const |
| | computes root-mean-square deviation between points
|
| float | MR::ICP::getMeanSqDistToPlane () const |
| | computes root-mean-square deviation from points to target planes
|
| const PointPairs & | MR::ICP::getFlt2RefPairs () const |
| | returns current pairs formed from samples on floating object and projections on reference object
|
| const PointPairs & | MR::ICP::getRef2FltPairs () const |
| | returns current pairs formed from samples on reference object and projections on floating object
|
| AffineXf3f | MR::ICP::calculateTransformation () |
| constexpr | MR::Id< T >::Id () noexcept |
| | the type used for internal representation of Id
|
| | MR::Id< T >::Id (NoInit) noexcept |
| template<typename U = int, std::enable_if_t< std::is_integral_v< U >, std::nullptr_t > = nullptr> |
| constexpr | MR::Id< T >::Id (U i) noexcept |
| constexpr | MR::Id< T >::operator ValueType () const |
| constexpr bool | MR::Id< T >::valid () const |
| constexpr | MR::Id< T >::operator bool () const |
| constexpr ValueType & | MR::Id< T >::get () noexcept |
| constexpr bool | MR::Id< T >::operator== (Id b) const |
| constexpr bool | MR::Id< T >::operator!= (Id b) const |
| constexpr bool | MR::Id< T >::operator< (Id b) const |
| template<typename U> |
| bool | MR::Id< T >::operator== (Id< U > b) const =delete |
| template<typename U> |
| bool | MR::Id< T >::operator!= (Id< U > b) const =delete |
| template<typename U> |
| bool | MR::Id< T >::operator< (Id< U > b) const =delete |
| constexpr Id & | MR::Id< T >::operator-- () |
| constexpr Id & | MR::Id< T >::operator++ () |
| constexpr Id | MR::Id< T >::operator-- (int) |
| constexpr Id | MR::Id< T >::operator++ (int) |
| constexpr Id & | MR::Id< T >::operator-= (ValueType a) |
| constexpr Id & | MR::Id< T >::operator+= (ValueType a) |
| | MR::NoInitId< T >::NoInitId () |
| | MR::NoInitId< T >::NoInitId (Id< T > id) |
| constexpr | MR::Id< EdgeTag >::Id () noexcept |
| | the type used for internal representation of Id
|
| | MR::Id< EdgeTag >::Id (NoInit) noexcept |
| constexpr | MR::Id< EdgeTag >::Id (UndirectedEdgeId u) noexcept |
| constexpr | MR::Id< EdgeTag >::Id (ValueType i) noexcept |
| constexpr | MR::Id< EdgeTag >::Id (unsigned int i) noexcept |
| constexpr | MR::Id< EdgeTag >::Id (size_t i) noexcept |
| constexpr | MR::Id< EdgeTag >::operator ValueType () const |
| constexpr bool | MR::Id< EdgeTag >::valid () const |
| constexpr | MR::Id< EdgeTag >::operator bool () const |
| constexpr ValueType & | MR::Id< EdgeTag >::get () noexcept |
| constexpr Id | MR::Id< EdgeTag >::sym () const |
| | returns identifier of the edge with same ends but opposite orientation
|
| constexpr bool | MR::Id< EdgeTag >::even () const |
| | among each pair of sym-edges: one is always even and the other is odd
|
| constexpr bool | MR::Id< EdgeTag >::odd () const |
| constexpr UndirectedEdgeId | MR::Id< EdgeTag >::undirected () const |
| | returns unique identifier of the edge ignoring its direction
|
| constexpr | MR::Id< EdgeTag >::operator UndirectedEdgeId () const |
| constexpr bool | MR::Id< EdgeTag >::operator== (Id b) const |
| constexpr bool | MR::Id< EdgeTag >::operator!= (Id b) const |
| constexpr bool | MR::Id< EdgeTag >::operator< (Id b) const |
| template<typename U> |
| bool | MR::Id< EdgeTag >::operator== (Id< U > b) const =delete |
| template<typename U> |
| bool | MR::Id< EdgeTag >::operator!= (Id< U > b) const =delete |
| template<typename U> |
| bool | MR::Id< EdgeTag >::operator< (Id< U > b) const =delete |
| constexpr Id & | MR::Id< EdgeTag >::operator-- () |
| constexpr Id & | MR::Id< EdgeTag >::operator++ () |
| constexpr Id | MR::Id< EdgeTag >::operator-- (int) |
| constexpr Id | MR::Id< EdgeTag >::operator++ (int) |
| constexpr Id & | MR::Id< EdgeTag >::operator-= (ValueType a) |
| constexpr Id & | MR::Id< EdgeTag >::operator+= (ValueType a) |
| constexpr | MR::Id< VoxelTag >::Id () noexcept |
| | the type used for internal representation of Id
|
| | MR::Id< VoxelTag >::Id (NoInit) noexcept |
| constexpr | MR::Id< VoxelTag >::Id (ValueType i) noexcept |
| constexpr | MR::Id< VoxelTag >::Id (int) noexcept=delete |
| constexpr | MR::Id< VoxelTag >::operator ValueType () const |
| constexpr bool | MR::Id< VoxelTag >::valid () const |
| constexpr | MR::Id< VoxelTag >::operator bool () const |
| constexpr ValueType & | MR::Id< VoxelTag >::get () noexcept |
| constexpr bool | MR::Id< VoxelTag >::operator== (Id b) const |
| constexpr bool | MR::Id< VoxelTag >::operator!= (Id b) const |
| constexpr bool | MR::Id< VoxelTag >::operator< (Id b) const |
| template<typename U> |
| bool | MR::Id< VoxelTag >::operator== (Id< U > b) const =delete |
| template<typename U> |
| bool | MR::Id< VoxelTag >::operator!= (Id< U > b) const =delete |
| template<typename U> |
| bool | MR::Id< VoxelTag >::operator< (Id< U > b) const =delete |
| constexpr Id & | MR::Id< VoxelTag >::operator-- () |
| constexpr Id & | MR::Id< VoxelTag >::operator++ () |
| constexpr Id | MR::Id< VoxelTag >::operator-- (int) |
| constexpr Id | MR::Id< VoxelTag >::operator++ (int) |
| constexpr Id & | MR::Id< VoxelTag >::operator-= (ValueType a) |
| constexpr Id & | MR::Id< VoxelTag >::operator+= (ValueType a) |
| template<typename T> |
| constexpr Id< T > | MR::operator+ (Id< T > id, int a) |
| template<typename T> |
| constexpr Id< T > | MR::operator+ (Id< T > id, unsigned int a) |
| template<typename T> |
| constexpr Id< T > | MR::operator+ (Id< T > id, size_t a) |
| template<typename T> |
| constexpr Id< T > | MR::operator- (Id< T > id, int a) |
| template<typename T> |
| constexpr Id< T > | MR::operator- (Id< T > id, unsigned int a) |
| template<typename T> |
| constexpr Id< T > | MR::operator- (Id< T > id, size_t a) |
| constexpr FaceId | MR::operator""_f (unsigned long long i) noexcept |
| constexpr VertId | MR::operator""_v (unsigned long long i) noexcept |
| constexpr EdgeId | MR::operator""_e (unsigned long long i) noexcept |
| constexpr UndirectedEdgeId | MR::operator""_ue (unsigned long long i) noexcept |
| constexpr VoxelId | MR::operator""_vox (unsigned long long i) noexcept |
| bool | MR::MeshBuilder::equalVector3f::operator() (const Vector3f &a, const Vector3f &b) const |
| void | MR::MeshBuilder::VertexIdentifier::reserve (size_t numTris) |
| | prepare identification of vertices from given this number of triangles
|
| void | MR::MeshBuilder::VertexIdentifier::addTriangles (const std::vector< Triangle3f > &buffer) |
| | identifies vertices from a chunk of triangles
|
| size_t | MR::MeshBuilder::VertexIdentifier::numTris () const |
| | returns the number of triangles added so far
|
| Triangulation | MR::MeshBuilder::VertexIdentifier::takeTriangulation () |
| | obtains triangulation with vertex ids
|
| VertCoords | MR::MeshBuilder::VertexIdentifier::takePoints () |
| | obtains coordinates of unique points in the order of vertex ids
|
| Color & | MR::Image::operator[] (const Vector2i &p) |
| | fetches some texture element specified by integer coordinates
|
| Color | MR::Image::operator[] (const Vector2i &p) const |
| size_t | MR::Image::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| Color | MR::Image::sampleDiscrete (const UVCoord &pos) const |
| Color | MR::Image::sampleBilinear (const UVCoord &pos) const |
| Color | MR::Image::sample (FilterType filter, const UVCoord &pos) const |
| bool | MR::ShellVertexInfo::valid () const |
| | returns true if shell vertex is in range, does not project on boundary and located on proper side
|
| ShellVertexInfo | MR::classifyShellVert (const MeshPart &mp, const Vector3f &shellPoint, const FindInnerShellSettings &settings={}) |
| VertBitSet | MR::findInnerShellVerts (const MeshPart &mp, const Mesh &shell, const FindInnerShellSettings &settings={}) |
| FaceBitSet | MR::findInnerShellFacesWithSplits (const MeshPart &mp, Mesh &shell, const FindInnerShellSettings &settings={}) |
| const T & | MR::InplaceStack< T, N >::top () const |
| T & | MR::InplaceStack< T, N >::top () |
| bool | MR::InplaceStack< T, N >::empty () const |
| size_t | MR::InplaceStack< T, N >::size () const |
| void | MR::InplaceStack< T, N >::push (const T &value) |
| void | MR::InplaceStack< T, N >::push (T &&value) |
| void | MR::InplaceStack< T, N >::pop () |
| ContinuousContours | MR::orderIntersectionContours (const MeshTopology &topologyA, const MeshTopology &topologyB, const PreciseCollisionResult &intersections) |
| ContinuousContours | MR::orderSelfIntersectionContours (const MeshTopology &topology, const std::vector< EdgeTri > &intersections) |
| MR_BIND_IGNORE Contours3f | MR::extractIntersectionContours (const Mesh &meshA, const Mesh &meshB, const ContinuousContours &orientedContours, const CoordinateConverters &converters, const AffineXf3f *rigidB2A=nullptr) |
| | extracts coordinates from two meshes intersection contours
|
| bool | MR::isClosed (const ContinuousContour &contour) |
| | returns true if contour is closed
|
| std::vector< int > | MR::detectLoneContours (const ContinuousContours &contours, bool ignoreOpen=false) |
| void | MR::removeLoneDegeneratedContours (const MeshTopology &edgesTopology, OneMeshContours &faceContours, OneMeshContours &edgeContours) |
| void | MR::removeLoneContours (ContinuousContours &contours, bool ignoreOpen=false) |
| | MR::InTreePathBuilder::InTreePathBuilder (const MeshTopology &topology, const UndirectedEdgeBitSet &treeEdges) |
| EdgePath | MR::InTreePathBuilder::build (VertId start, VertId finish) const |
| | finds the path in tree from start vertex to finish vertex
|
| std::vector< size_t > | MR::splitByLines (const char *data, size_t size) |
| | returns offsets for each new line in monolith char block
|
| MR_BIND_IGNORE std::streamoff | MR::getStreamSize (std::istream &in) |
| MR_BIND_IGNORE Expected< std::string > | MR::readString (std::istream &in) |
| MR_BIND_IGNORE Expected< Buffer< char > > | MR::readCharBuffer (std::istream &in) |
| | reads input stream to monolith char block
|
| template<typename T> |
| Expected< void > | MR::parseTextCoordinate (const std::string_view &str, Vector3< T > &v, Vector3< T > *n=nullptr, Color *c=nullptr) |
| | read coordinates to v separated by space
|
| template<typename T> |
| Expected< void > | MR::parseObjCoordinate (const std::string_view &str, Vector3< T > &v, Vector3< T > *c=nullptr) |
| template<typename T> |
| Expected< void > | MR::parsePtsCoordinate (const std::string_view &str, Vector3< T > &v, Color *c=nullptr, Vector3< T > *n=nullptr) |
| template<typename T> |
| Expected< void > | MR::parsePtsCoordinate (const std::string_view &str, Vector3< T > &v, Color &c) |
| Expected< void > | MR::parseFirstNum (const std::string_view &str, int &num) |
| | reads the first integer number in the line
|
| Expected< void > | MR::parsePolygon (const std::string_view &str, VertId *vertId, int *numPoints) |
| template<typename T> |
| Expected< void > | MR::parseAscCoordinate (const std::string_view &str, Vector3< T > &v, Vector3< T > *n=nullptr, Color *c=nullptr) |
| template<typename T> |
| Expected< void > | MR::parseSingleNumber (const std::string_view &str, T &num) |
| bool | MR::hasBom (const std::string_view &str) |
| | checks if the given string starts with the UTF-8 byte-order mark
|
| virtual | MR::BasicUiRenderTask::~BasicUiRenderTask ()=default |
| | MR::BasicUiRenderTask::BasicUiRenderTask ()=default |
| | MR::BasicUiRenderTask::BasicUiRenderTask (const BasicUiRenderTask &)=default |
| | MR::BasicUiRenderTask::BasicUiRenderTask (BasicUiRenderTask &&)=default |
| BasicUiRenderTask & | MR::BasicUiRenderTask::operator= (const BasicUiRenderTask &)=default |
| BasicUiRenderTask & | MR::BasicUiRenderTask::operator= (BasicUiRenderTask &&)=default |
| bool | MR::BasicUiRenderTask::BackwardPassParams::tryConsumeMouseHover () const |
| | If nothing else is hovered, this returns true and writes mouseHover to consumedInteractions.
|
| virtual void | MR::BasicUiRenderTask::earlyBackwardPass (const BackwardPassParams ¶ms) |
| virtual void | MR::BasicUiRenderTask::renderPass ()=0 |
| | This is the main rendering pass.
|
| virtual | MR::UiRenderManager::~UiRenderManager ()=default |
| virtual void | MR::UiRenderManager::preRenderViewport (ViewportId viewport) |
| | This is called before doing IRenderObject::renderUi() on even object in a viewport. Each viewport is rendered separately.
|
| virtual void | MR::UiRenderManager::postRenderViewport (ViewportId viewport) |
| | This is called after doing IRenderObject::renderUi() on even object in a viewport. Each viewport is rendered separately.
|
| virtual BasicUiRenderTask::BackwardPassParams | MR::UiRenderManager::beginBackwardPass (ViewportId viewport, UiRenderParams::UiTaskList &tasks) |
| virtual void | MR::UiRenderManager::finishBackwardPass (ViewportId viewport, const BasicUiRenderTask::BackwardPassParams ¶ms) |
| | After the backward pass is performed, the parameters should be passed back into this function.
|
| virtual | MR::IRenderObject::~IRenderObject ()=default |
| virtual bool | MR::IRenderObject::render (const ModelRenderParams ¶ms)=0 |
| | Returns true if something was rendered, or false if nothing to render.
|
| virtual void | MR::IRenderObject::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId)=0 |
| virtual size_t | MR::IRenderObject::heapBytes () const =0 |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::IRenderObject::glBytes () const =0 |
| | returns the amount of memory this object allocated in OpenGL
|
| virtual void | MR::IRenderObject::forceBindAll () |
| | binds all data for this render object, not to bind ever again (until object becomes dirty)
|
| virtual void | MR::IRenderObject::renderUi (const UiRenderParams ¶ms) |
| | MR::RenderObjectCombinator< Bases >::RenderObjectCombinator (const VisualObject &object) |
| bool | MR::RenderObjectCombinator< Bases >::render (const ModelRenderParams ¶ms) override |
| void | MR::RenderObjectCombinator< Bases >::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId) override |
| size_t | MR::RenderObjectCombinator< Bases >::heapBytes () const override |
| size_t | MR::RenderObjectCombinator< Bases >::glBytes () const override |
| void | MR::RenderObjectCombinator< Bases >::forceBindAll () override |
| void | MR::RenderObjectCombinator< Bases >::renderUi (const UiRenderParams ¶ms) override |
| MR_BIND_IGNORE std::unique_ptr< IRenderObject > | MR::createRenderObject (const VisualObject &visObj, const std::type_index &type) |
| template<typename ObjectType> |
| MR_BIND_IGNORE std::unique_ptr< IRenderObject > | MR::createRenderObject (const VisualObject &visObj) |
| template<typename RenderObjType> |
| MR_BIND_IGNORE IRenderObjectConstructorLambda | MR::makeRenderObjectConstructor () |
| | MR::RegisterRenderObjectConstructor::RegisterRenderObjectConstructor (const std::type_index &type, IRenderObjectConstructorLambda lambda) |
| | MR::RegisterRenderObjectConstructor::~RegisterRenderObjectConstructor () |
| bool | MR::isNanFast (float f) |
| | quickly tests whether given float is not-a-number
|
| std::optional< VertBitSet > | MR::pointIterativeSampling (const PointCloud &cloud, int numSamples, const ProgressCallback &cb={}) |
| | MR::Laplacian::Laplacian (Mesh &mesh) |
| | MR::Laplacian::Laplacian (const MeshTopology &topology, VertCoords &points) |
| | MR::Laplacian::Laplacian (Laplacian &&) noexcept |
| | MR::Laplacian::~Laplacian () |
| void | MR::Laplacian::init (const VertBitSet &freeVerts, EdgeWeights weights, VertexMass vmass=VertexMass::Unit, RememberShape rem=RememberShape::Yes) |
| void | MR::Laplacian::initFromPoints (const VertCoords &points, const VertBitSet &freeVerts, EdgeWeights weights, VertexMass vmass=VertexMass::Unit, RememberShape rem=RememberShape::Yes) |
| | same as init() but uses the given points instead of ones passed to a constructor for weights computation and shape memory
|
| void | MR::Laplacian::fixVertex (VertId v, bool smooth=true) |
| void | MR::Laplacian::fixVertex (VertId v, const Vector3f &fixedPos, bool smooth=true) |
| void | MR::Laplacian::multVertexWeight (VertId v, double factor) |
| | multiplies vertex equation's weight on the given factor
|
| void | MR::Laplacian::updateSolver () |
| | if you manually call this method after initialization and fixing vertices then next apply call will be much faster
|
| void | MR::Laplacian::applyToVector (VertCoords &points) |
| void | MR::Laplacian::apply () |
| void | MR::Laplacian::applyToScalar (VertScalars &scalarField) |
| const VertBitSet & | MR::Laplacian::region () const |
| | return all initially free vertices and the first layer of vertices around them
|
| const VertBitSet & | MR::Laplacian::freeVerts () const |
| | return currently free vertices
|
| const VertBitSet & | MR::Laplacian::firstLayerFixedVerts () const |
| | return fixed vertices from the first layer around free vertices
|
| const MeshTopology & | MR::Laplacian::topology () const |
| | return the topology for which Laplacian was constructed
|
| VertCoords & | MR::Laplacian::points () const |
| | return the vector of coordinates for which Laplacian was constructed
|
| void | MR::Laplacian::addAttractor (const Attractor &a) |
| | adds one more attractor to the stored list
|
| void | MR::Laplacian::removeAllAttractors () |
| | forgets all attractors added previously
|
| std::shared_ptr< Object > | MR::makeLevelOfDetails (Mesh &&mesh, int maxDepth) |
| constexpr | MR::Line< V >::Line () noexcept=default |
| constexpr | MR::Line< V >::Line (const V &p, const V &d) noexcept |
| template<typename U> |
| constexpr | MR::Line< V >::Line (const Line< U > &l) noexcept |
| V | MR::Line< V >::operator() (T param) const |
| | returns point on the line, where param=0 returns p and param=1 returns p+d
|
| T | MR::Line< V >::distanceSq (const V &x) const |
| | returns squared distance from given point to this line
|
| Line | MR::Line< V >::operator- () const |
| | returns same line represented with flipped direction of d-vector
|
| const Line & | MR::Line< V >::operator+ () const |
| | returns same representation
|
| Line | MR::Line< V >::normalized () const |
| | returns same line represented with unit d-vector
|
| V | MR::Line< V >::project (const V &x) const |
| | finds the closest point on line
|
| | MR::LineObject::LineObject () |
| | Creates simple plane object.
|
| | MR::LineObject::LineObject (const std::vector< Vector3f > &pointsToApprox) |
| | Finds best plane to approx given points.
|
| | MR::LineObject::LineObject (LineObject &&) noexcept=default |
| LineObject & | MR::LineObject::operator= (LineObject &&) noexcept=default |
| static constexpr const char * | MR::LineObject::StaticTypeName () noexcept |
| virtual const char * | MR::LineObject::typeName () const override |
| static constexpr const char * | MR::LineObject::StaticClassName () noexcept |
| virtual std::string | MR::LineObject::className () const override |
| static constexpr const char * | MR::LineObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::LineObject::classNameInPlural () const override |
| | MR::LineObject::LineObject (ProtectedStruct, const LineObject &obj) |
| virtual std::shared_ptr< Object > | MR::LineObject::clone () const override |
| virtual std::shared_ptr< Object > | MR::LineObject::shallowClone () const override |
| Vector3f | MR::LineObject::getDirection (ViewportId id={}) const |
| | calculates direction from xf
|
| Vector3f | MR::LineObject::getCenter (ViewportId id={}) const |
| | calculates center from xf
|
| void | MR::LineObject::setDirection (const Vector3f &normal, ViewportId id={}) |
| | updates xf to fit given normal
|
| void | MR::LineObject::setCenter (const Vector3f ¢er, ViewportId id={}) |
| | updates xf to fit given center
|
| void | MR::LineObject::setLength (float size, ViewportId id={}) |
| | updates xf to scale size
|
| void | MR::LineObject::setPoints (const Vector3f &a, const Vector3f &b, ViewportId id={}) |
| | updates xf for line visually to go from point a to point b
|
| float | MR::LineObject::getLength (ViewportId id={}) const |
| | calculates line size from xf
|
| virtual Vector3f | MR::LineObject::getBasePoint (ViewportId id={}) const override |
| | Returns point considered as base for the feature.
|
| Vector3f | MR::LineObject::getPointA (ViewportId id={}) const |
| | Returns the starting point, aka center - dir * len/2.
|
| Vector3f | MR::LineObject::getPointB (ViewportId id={}) const |
| | Returns the finishing point, aka center + dir * len/2.
|
| FeatureObjectProjectPointResult | MR::LineObject::projectPoint (const Vector3f &point, ViewportId id={}) const override |
| virtual const std::vector< FeatureObjectSharedProperty > & | MR::LineObject::getAllSharedProperties () const override |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| | MR::LineObject::LineObject (const LineObject &other)=default |
| virtual void | MR::LineObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::LineObject::serializeFields_ (Json::Value &root) const override |
| virtual Expected< std::future< Expected< void > > > | MR::LineObject::serializeModel_ (const std::filesystem::path &) const override |
| virtual Expected< void > | MR::LineObject::deserializeModel_ (const std::filesystem::path &, ProgressCallback) override |
| | Reads model from file.
|
| void | MR::LineObject::setupRenderObject_ () const override |
| constexpr | MR::LineSegm< V >::LineSegm () noexcept=default |
| constexpr | MR::LineSegm< V >::LineSegm (const V &a, const V &b) noexcept |
| template<typename U> |
| constexpr | MR::LineSegm< V >::LineSegm (const LineSegm< U > &p) noexcept |
| V | MR::LineSegm< V >::dir () const |
| | returns directional vector of the line
|
| T | MR::LineSegm< V >::lengthSq () const |
| | returns squared length of this line segment
|
| T | MR::LineSegm< V >::length () const |
| | returns the length of this line segment
|
| V | MR::LineSegm< V >::operator() (T param) const |
| | returns point on the line, where param=0 returns a and param=1 returns b
|
| template<typename V> |
| bool | MR::operator== (const LineSegm< V > &a, const LineSegm< V > &b) |
| template<typename V> |
| V | MR::closestPointOnLineSegm (const V &pt, const LineSegm< V > &l) |
| template<typename V> |
| bool | MR::doSegmentsIntersect (const LineSegm< V > &x, const LineSegm< V > &y, typename V::ValueType *xPos=nullptr, typename V::ValueType *yPos=nullptr) |
| template<typename V> |
| bool | MR::doSegmentLineIntersect (const LineSegm< V > &x, const Line< V > &y, typename V::ValueType *xPos=nullptr, typename V::ValueType *yPos=nullptr) |
| | MR::FanRecord::FanRecord (VertId b={}, std::uint32_t fn=0) |
| | MR::FanRecord::FanRecord (NoInit) |
| | MR::FanRecordWithCenter::FanRecordWithCenter (VertId c={}, VertId b={}, std::uint32_t fn=0) |
| | MR::FanRecordWithCenter::FanRecordWithCenter (NoInit) |
| std::optional< AllLocalTriangulations > | MR::uniteLocalTriangulations (const std::vector< SomeLocalTriangulations > &in, const ProgressCallback &progress={}) |
| Vector3f | MR::computeNormal (const AllLocalTriangulations &triangs, const VertCoords &points, VertId v) |
| | compute normal at point by averaging neighbor triangle normals weighted by triangle's angle at the point
|
| void | MR::orientLocalTriangulations (AllLocalTriangulations &triangs, const VertCoords &coords, const VertBitSet ®ion, const VertNormals &targetDir) |
| | orient neighbors around each point in
|
| void | MR::orientLocalTriangulations (AllLocalTriangulations &triangs, const VertCoords &coords, const VertBitSet ®ion, const std::function< Vector3f(VertId)> &targetDir) |
| bool | MR::autoOrientLocalTriangulations (const PointCloud &pointCloud, AllLocalTriangulations &triangs, const VertBitSet ®ion, ProgressCallback progress={}, Triangulation *outRep3=nullptr, Triangulation *outRep2=nullptr) |
| | orient neighbors around each point in
|
| TrianglesRepetitions | MR::computeTrianglesRepetitions (const AllLocalTriangulations &triangs) |
| | computes statistics about the number of triangle repetitions in local triangulations
|
| std::vector< UnorientedTriangle > | MR::findRepeatedUnorientedTriangles (const AllLocalTriangulations &triangs, int repetitions) |
| | from local triangulations returns all unoriented triangles with given number of repetitions each in [1,3]
|
| Triangulation | MR::findRepeatedOrientedTriangles (const AllLocalTriangulations &triangs, int repetitions) |
| | from local triangulations returns all oriented triangles with given number of repetitions each in [1,3]
|
| void | MR::findRepeatedOrientedTriangles (const AllLocalTriangulations &triangs, Triangulation *outRep3, Triangulation *outRep2) |
| | optional output with all oriented triangles that appear in exactly two local triangulations
|
| Mesh | MR::makePlane () |
| | Makes square plane 1x1 size with center at (0,0,0) and (0,0,1) normal.
|
| AffineXf3f | MR::makeRigidXf (const MeshPart &mp, const AffineXf3f &meshXf) |
| Mesh | MR::makeSphere (const SphereParams ¶ms) |
| | creates a mesh of sphere with irregular triangulation
|
| Mesh | MR::makeUVSphere (float radius=1.0, int horisontalResolution=16, int verticalResolution=16) |
| | creates a mesh of sphere with regular triangulation (parallels and meridians)
|
| EdgeId | MR::mapEdge (const WholeEdgeMap &map, EdgeId src) |
| | given input edge (src), converts its id using given map
|
| UndirectedEdgeId | MR::mapEdge (const WholeEdgeMap &map, UndirectedEdgeId src) |
| | given input edge (src), converts its id using given map
|
| EdgeId | MR::mapEdge (const WholeEdgeHashMap &map, EdgeId src) |
| | given input edge (src), converts its id using given map
|
| UndirectedEdgeId | MR::mapEdge (const WholeEdgeHashMap &map, UndirectedEdgeId src) |
| | given input edge (src), converts its id using given map
|
| EdgeId | MR::mapEdge (const WholeEdgeMapOrHashMap &m, EdgeId src) |
| | given input edge (src), converts its id using given map
|
| UndirectedEdgeId | MR::mapEdge (const WholeEdgeMapOrHashMap &m, UndirectedEdgeId src) |
| | given input edge (src), converts its id using given map
|
| UndirectedEdgeId | MR::mapEdge (const UndirectedEdgeBMap &map, UndirectedEdgeId src) |
| | given input edge (src), converts its id using given map
|
| UndirectedEdgeBitSet | MR::mapEdges (const WholeEdgeMap &map, const UndirectedEdgeBitSet &src) |
| | given input bit-set (src), converts each id corresponding to set bit using given map, and sets its bit in the resulting bit set
|
| UndirectedEdgeBitSet | MR::mapEdges (const WholeEdgeHashMap &map, const UndirectedEdgeBitSet &src) |
| | given input bit-set (src), converts each id corresponding to set bit using given map, and sets its bit in the resulting bit set
|
| UndirectedEdgeBitSet | MR::mapEdges (const UndirectedEdgeBMap &map, const UndirectedEdgeBitSet &src) |
| | given input bit-set (src), converts each id corresponding to set bit using given map, and sets its bit in the resulting bit set
|
| static MapOrHashMap | MR::MapOrHashMap< K, V >::createMap (size_t size=0) |
| static MapOrHashMap | MR::MapOrHashMap< K, V >::createHashMap (size_t capacity=0) |
| void | MR::MapOrHashMap< K, V >::setMap (Dense &&m MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| void | MR::MapOrHashMap< K, V >::setHashMap (Hash &&m MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| void | MR::MapOrHashMap< K, V >::resizeReserve (size_t denseTotalSize, size_t hashAdditionalCapacity) |
| void | MR::MapOrHashMap< K, V >::pushBack (K key MR_LIFETIME_CAPTURE_BY_NESTED(this), V val MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| template<typename F> |
| void | MR::MapOrHashMap< K, V >::forEach (F &&f) const |
| | executes given function for all pairs (key, value) with valid value for dense map
|
| Dense * | MR::MapOrHashMap< K, V >::getMap () MR_LIFETIMEBOUND |
| const Dense * | MR::MapOrHashMap< K, V >::getMap () const MR_LIFETIMEBOUND |
| Hash * | MR::MapOrHashMap< K, V >::getHashMap () MR_LIFETIMEBOUND |
| const Hash * | MR::MapOrHashMap< K, V >::getHashMap () const MR_LIFETIMEBOUND |
| void | MR::MapOrHashMap< K, V >::clear () |
| template<typename K, typename V> |
| V | MR::getAt (const MapOrHashMap< K, V > &m, K key, V def={}) |
| template<typename K, typename V> |
| void | MR::setAt (MapOrHashMap< K, V > &m, K key, V val) |
| template<typename ValueT, typename IndexT> |
| void | MR::mapNewToOldVector (const Vector< ValueT, Id< IndexT > > &oldData, const Vector< Id< IndexT >, Id< IndexT > > &newToOld, Vector< ValueT, Id< IndexT > > &newData) |
| template<typename ValueT, typename IndexT> |
| void | MR::mapOldToNewVector (const Vector< ValueT, Id< IndexT > > &oldData, const Vector< Id< IndexT >, Id< IndexT > > &newToOld, Vector< ValueT, Id< IndexT > > &newData) |
| bool | MR::isClosed (const Contour3f &c) |
| MarkedContour3f | MR::markedContour (Contour3f in) |
| MarkedContour3f | MR::markedFirstLast (Contour3f in) |
| MarkedContour3f | MR::resample (const MarkedContour3f &in, float minStep, Contour3f *normals=nullptr) |
| MarkedContour3f | MR::makeSpline (MarkedContour3f in, float markStability=1, const Contour3f *normals=nullptr) |
| MarkedContour3f | MR::makeSpline (MarkedContour3f in, const Contour3f &normals, float markStability=1) |
| MarkedContour3f | MR::makeSpline (const Contour3f &controlPoints, const SplineSettings &settings) |
| constexpr | MR::Matrix2< T >::Matrix2 () noexcept |
| constexpr | MR::Matrix2< T >::Matrix2 (const Vector2< T > &x, const Vector2< T > &y) |
| | initializes matrix from its 2 rows
|
| template<typename U> |
| constexpr | MR::Matrix2< T >::Matrix2 (const Matrix2< U > &m) |
| static constexpr Matrix2 | MR::Matrix2< T >::zero () noexcept |
| static constexpr Matrix2 | MR::Matrix2< T >::identity () noexcept |
| static constexpr Matrix2 | MR::Matrix2< T >::scale (T s) noexcept |
| | returns a matrix that scales uniformly
|
| static constexpr Matrix2 | MR::Matrix2< T >::scale (T sx, T sy) noexcept |
| | returns a matrix that has its own scale along each axis
|
| static constexpr Matrix2 | MR::Matrix2< T >::scale (const Vector2< T > &s) noexcept |
| static constexpr Matrix2 | MR::Matrix2< T >::fromColumns (const Vector2< T > &x, const Vector2< T > &y) noexcept |
| constexpr const Vector2< T > & | MR::Matrix2< T >::operator[] (int row) const noexcept |
| | row access
|
| constexpr Vector2< T > & | MR::Matrix2< T >::operator[] (int row) noexcept |
| constexpr Vector2< T > | MR::Matrix2< T >::col (int i) const noexcept |
| | column access
|
| constexpr T | MR::Matrix2< T >::trace () const noexcept |
| | computes trace of the matrix
|
| constexpr T | MR::Matrix2< T >::normSq () const noexcept |
| | compute sum of squared matrix elements
|
| constexpr auto | MR::Matrix2< T >::norm () const noexcept |
| constexpr T | MR::Matrix2< T >::det () const noexcept |
| | computes determinant of the matrix
|
| constexpr Matrix2< T > inverse() const noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix2< T > | MR::Matrix2< T >::transposed () const noexcept |
| | computes inverse matrix
|
| constexpr | MR::Matrix3< T >::Matrix3 () noexcept |
| constexpr | MR::Matrix3< T >::Matrix3 (const Vector3< T > &x, const Vector3< T > &y, const Vector3< T > &z) |
| | initializes matrix from its 3 rows
|
| template<typename U> |
| | MR::Matrix3< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit Matrix3(const Matrix3< U > &m) |
| static constexpr Matrix3 | MR::Matrix3< T >::zero () noexcept |
| static constexpr Matrix3 | MR::Matrix3< T >::identity () noexcept |
| static constexpr Matrix3 | MR::Matrix3< T >::scale (T s) noexcept |
| | returns a matrix that scales uniformly
|
| static constexpr Matrix3 | MR::Matrix3< T >::scale (T sx, T sy, T sz) noexcept |
| | returns a matrix that has its own scale along each axis
|
| static constexpr Matrix3 | MR::Matrix3< T >::scale (const Vector3< T > &s) noexcept |
| static constexpr Matrix3 | MR::Matrix3< T >::fromColumns (const Vector3< T > &x, const Vector3< T > &y, const Vector3< T > &z) noexcept |
| constexpr const Vector3< T > & | MR::Matrix3< T >::operator[] (int row) const noexcept |
| | row access
|
| constexpr Vector3< T > & | MR::Matrix3< T >::operator[] (int row) noexcept |
| constexpr Vector3< T > | MR::Matrix3< T >::col (int i) const noexcept |
| | column access
|
| constexpr T | MR::Matrix3< T >::trace () const noexcept |
| | computes trace of the matrix
|
| constexpr T | MR::Matrix3< T >::normSq () const noexcept |
| | compute sum of squared matrix elements
|
| constexpr auto | MR::Matrix3< T >::norm () const noexcept |
| constexpr T | MR::Matrix3< T >::det () const noexcept |
| | computes determinant of the matrix
|
| constexpr Matrix3< T > inverse() const noexcept MR_REQUIRES_IF_SUPPORTED(!std constexpr Matrix3< T > | MR::Matrix3< T >::transposed () const noexcept |
| | computes inverse matrix
|
| template<typename T> |
| void | MR::decomposeMatrix3 (const Matrix3< T > &m, Matrix3< T > &rotation, Matrix3< T > &scaling) |
| | Decomposes matrix into rotation and scaling matrices.
|
| template<typename T> |
| bool | MR::isRigid (const Matrix3< T > &m) |
| | Returns true if matrix scale is identity.
|
| constexpr | MR::Matrix4< T >::Matrix4 () noexcept |
| constexpr | MR::Matrix4< T >::Matrix4 (const Vector4< T > &x, const Vector4< T > &y, const Vector4< T > &z, const Vector4< T > &w) |
| | initializes matrix from 4 row-vectors
|
| constexpr | MR::Matrix4< T >::Matrix4 (const Matrix3< T > &r, const Vector3< T > &t) |
| | construct from rotation matrix and translation vector
|
| template<MR_SAME_TYPE_TEMPLATE_PARAM(T, TT)> |
| constexpr | MR::Matrix4< T >::Matrix4 (const AffineXf3< TT > &xf) MR_REQUIRES_IF_SUPPORTED(std |
| template<typename U> |
| | MR::Matrix4< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit Matrix4(const Matrix4< U > &m) |
| static constexpr Matrix4 | MR::Matrix4< T >::zero () noexcept |
| static constexpr Matrix4 | MR::Matrix4< T >::identity () noexcept |
| static constexpr Matrix4 | MR::Matrix4< T >::scale (T s) noexcept |
| | returns a matrix that scales uniformly
|
| constexpr const T & | MR::Matrix4< T >::operator() (int row, int col) const noexcept |
| | element access
|
| constexpr T & | MR::Matrix4< T >::operator() (int row, int col) noexcept |
| constexpr const Vector4< T > & | MR::Matrix4< T >::operator[] (int row) const noexcept |
| | row access
|
| constexpr Vector4< T > & | MR::Matrix4< T >::operator[] (int row) noexcept |
| constexpr Vector4< T > | MR::Matrix4< T >::col (int i) const noexcept |
| | column access
|
| constexpr T | MR::Matrix4< T >::trace () const noexcept |
| | computes trace of the matrix
|
| constexpr T | MR::Matrix4< T >::normSq () const noexcept |
| | compute sum of squared matrix elements
|
| constexpr auto | MR::Matrix4< T >::norm () const noexcept |
| Matrix3< T > | MR::Matrix4< T >::submatrix3 (int i, int j) const noexcept |
| | computes submatrix of the matrix with excluded i-th row and j-th column
|
| T | MR::Matrix4< T >::det () const noexcept |
| | computes determinant of the matrix
|
| constexpr Matrix4< T > inverse() const noexcept MR_REQUIRES_IF_SUPPORTED(!std constexpr Matrix4< T > | MR::Matrix4< T >::transposed () const noexcept |
| | computes inverse matrix
|
| constexpr Matrix3< T > | MR::Matrix4< T >::getRotation () const noexcept |
| void | MR::Matrix4< T >::setRotation (const Matrix3< T > &rot) noexcept |
| constexpr Vector3< T > | MR::Matrix4< T >::getTranslation () const noexcept |
| void | MR::Matrix4< T >::setTranslation (const Vector3< T > &t) noexcept |
| constexpr T * | MR::Matrix4< T >::data () |
| constexpr const T * | MR::Matrix4< T >::data () const |
| template<MR_SAME_TYPE_TEMPLATE_PARAM(T, TT)> |
| | MR::Matrix4< T >::operator AffineXf3< TT > () const MR_REQUIRES_IF_SUPPORTED(std |
| | MR::MeasurementObject::MeasurementObject () |
| | MR::TransformedMesh::TransformedMesh ()=default |
| | MR::TransformedMesh::TransformedMesh (Mesh mesh, const AffineXf3f &xf={}) |
| TransformedMesh | MR::MeshMeshConverter::operator() (Mesh mesh, const AffineXf3f &xf={}) const |
| TransformedMesh | MR::MeshMeshConverter::operator() (const ObjectMesh &obj) const |
| const Mesh & | MR::MeshMeshConverter::operator() (const TransformedMesh &xm) const |
| Mesh && | MR::MeshMeshConverter::operator() (TransformedMesh &&xm) const |
| TransformedMesh & | MR::operator+= (TransformedMesh &a, const TransformedMesh &b) |
| | union operation on two meshes
|
| TransformedMesh & | MR::operator-= (TransformedMesh &a, const TransformedMesh &b) |
| | difference operation on two meshes
|
| TransformedMesh & | MR::operator*= (TransformedMesh &a, const TransformedMesh &b) |
| | intersection operation on two meshes
|
| MeshTopology | MR::MeshBuilder::fromTriangles (const Triangulation &t, const BuildSettings &settings={}, ProgressCallback progressCb={}) |
| size_t | MR::MeshBuilder::duplicateNonManifoldVertices (Triangulation &t, FaceBitSet *region=nullptr, std::vector< VertDuplication > *dups=nullptr, VertId lastValidVert={}) |
| MeshTopology | MR::MeshBuilder::fromTrianglesDuplicatingNonManifoldVertices (Triangulation &t, std::vector< VertDuplication > *dups=nullptr, const BuildSettings &settings={}) |
| Mesh | MR::MeshBuilder::fromPointTriples (const std::vector< Triangle3f > &posTriples) |
| MeshTopology | MR::MeshBuilder::fromDisjointMeshPieces (const Triangulation &t, VertId maxVertId, const std::vector< MeshPiece > &pieces, const BuildSettings &settings={}) |
| void | MR::MeshBuilder::addTriangles (MeshTopology &res, const Triangulation &t, const BuildSettings &settings={}) |
| void | MR::MeshBuilder::addTriangles (MeshTopology &res, std::vector< VertId > &vertTriples, FaceBitSet *createdFaces=nullptr) |
| MeshTopology | MR::MeshBuilder::fromFaceSoup (const std::vector< VertId > &verts, const Vector< VertSpan, FaceId > &faces, const BuildSettings &settings={}, ProgressCallback progressCb={}) |
| | < this set receives indices of added triangles
|
| int | MR::MeshBuilder::uniteCloseVertices (Mesh &mesh, float closeDist, bool uniteOnlyBd=true, VertMap *optionalVertOldToNew=nullptr) |
| int | MR::MeshBuilder::uniteCloseVertices (Mesh &mesh, const UniteCloseParams ¶ms={}) |
| | MR::MeshBuilder::Triangle::Triangle () noexcept=default |
| | MR::MeshBuilder::Triangle::Triangle (VertId a, VertId b, VertId c, FaceId f) |
| bool | MR::MeshBuilder::Triangle::operator== (const Triangle &other) const |
| template<typename T> |
| auto | MR::preCollapseVertAttribute (const Mesh &mesh, Vector< T, VertId > &data) |
| PreCollapseCallback | MR::meshPreCollapseVertAttribute (const Mesh &mesh, const MeshAttributesToUpdate ¶ms) |
| | MR::MeshDiff::MeshDiff ()=default |
| | constructs minimal difference, where applyAndSwap( m ) will produce empty mesh
|
| | MR::MeshDiff::MeshDiff (const Mesh &from, const Mesh &to) |
| | computes the difference, that can be applied to mesh-from in order to get mesh-to
|
| void | MR::MeshDiff::applyAndSwap (Mesh &m) |
| bool | MR::MeshDiff::any () const |
| size_t | MR::MeshDiff::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| void | MR::divideMeshWithPlane (ObjectMeshData &data, const Plane3f &plane, const DivideMeshWithPlaneParams ÷Params={}) |
| FaceBitSet | MR::findOuterLayer (const Mesh &mesh) |
| void | MR::makeDegenerateBandAroundRegion (Mesh &mesh, const FaceBitSet ®ion, const MakeDegenerateBandAroundRegionParams ¶ms={}) |
| | Create a band of degenerate faces along the border of the specified region and the rest of the mesh.
|
| template<typename T> |
| class MRMESH_CLASS | MR::Id (EdgeId, Id< EdgeTag >)(UndirectedEdgeId |
| class MRMESH_CLASS | MR::Id< UndirectedEdgeTag > (FaceId, Id< FaceTag >)(VertId |
| class MRMESH_CLASS | MR::Id< VertTag > (PixelId, Id< PixelTag >)(VoxelId |
| class MRMESH_CLASS | MR::Id< VoxelTag > (RegionId, Id< RegionTag >)(NodeId |
| class MRMESH_CLASS | MR::Id< NodeTag > (ObjId, Id< ObjTag >)(TextureId |
| class MRMESH_CLASS | MR::Id< TextureTag > (GraphVertId, Id< GraphVertTag >)(GraphEdgeId |
| template<typename T> |
| class MRMESH_CLASS | MR::NoInitId (NoInitNodeId, NoInitId< NodeTag >)) template< typename T |
| template<typename I> |
| class MRMESH_CLASS | MR::TypedBitSet (FaceBitSet, TypedBitSet< FaceId >)(VertBitSet |
| class MRMESH_CLASS | MR::TypedBitSet< VertId > (EdgeBitSet, TypedBitSet< EdgeId >)(UndirectedEdgeBitSet |
| class MRMESH_CLASS | MR::TypedBitSet< UndirectedEdgeId > (PixelBitSet, TypedBitSet< PixelId >)(VoxelBitSet |
| class MRMESH_CLASS | MR::TypedBitSet< VoxelId > (RegionBitSet, TypedBitSet< RegionId >)(NodeBitSet |
| class MRMESH_CLASS | MR::TypedBitSet< NodeId > (ObjBitSet, TypedBitSet< ObjId >)(TextureBitSet |
| class MRMESH_CLASS | MR::TypedBitSet< TextureId > (GraphVertBitSet, TypedBitSet< GraphVertId >)(GraphEdgeBitSet |
| template<typename T> |
| class MRMESH_CLASS | MR::SetBitIteratorT (SetBitIterator, SetBitIteratorT< BitSet >)(FaceSetBitIterator |
| class MRMESH_CLASS | MR::SetBitIteratorT< FaceBitSet > (VertSetBitIterator, SetBitIteratorT< VertBitSet >)(EdgeSetBitIterator |
| class MRMESH_CLASS | MR::SetBitIteratorT< EdgeBitSet > (UndirectedEdgeSetBitIterator, SetBitIteratorT< UndirectedEdgeBitSet >)) struct Color |
| MRMESH_CLASS | MR::Vector2< bool > (Vector2i, Vector2< int >)(Vector2i64 |
| MRMESH_CLASS | MR::Vector2< Int64 > (Vector2f, Vector2< float >)(Vector2d |
| MRMESH_CLASS | MR::Vector3< bool > (Vector3i, Vector3< int >)(Vector3i64 |
| MRMESH_CLASS | MR::Vector3< Int64 > (Vector3f, Vector3< float >)(Vector3d |
| | MR::Vector4< bool > (Vector4i, Vector4< int >)(Vector4i64 |
| | MR::Vector4< Int64 > (Vector4f, Vector4< float >)(Vector4d |
| | MR::Matrix2< bool > (Matrix2i, Matrix2< int >)(Matrix2i64 |
| | MR::Matrix2< Int64 > (Matrix2f, Matrix2< float >)(Matrix2d |
| | MR::Matrix3< bool > (Matrix3i, Matrix3< int >)(Matrix3i64 |
| | MR::Matrix3< Int64 > (Matrix3f, Matrix3< float >)(Matrix3d |
| | MR::Matrix4< bool > (Matrix4i, Matrix4< int >)(Matrix4i64 |
| | MR::Matrix4< Int64 > (Matrix4f, Matrix4< float >)(Matrix4d |
| | MR::SymMatrix2< bool > (SymMatrix2i, SymMatrix2< int >)(SymMatrix2i64 |
| | MR::SymMatrix2< Int64 > (SymMatrix2f, SymMatrix2< float >)(SymMatrix2d |
| | MR::SymMatrix3< bool > (SymMatrix3i, SymMatrix3< int >)(SymMatrix3i64 |
| | MR::SymMatrix3< Int64 > (SymMatrix3f, SymMatrix3< float >)(SymMatrix3d |
| | MR::SymMatrix4< bool > (SymMatrix4i, SymMatrix4< int >)(SymMatrix4i64 |
| | MR::SymMatrix4< Int64 > (SymMatrix4f, SymMatrix4< float >)(SymMatrix4d |
| | MR::AffineXf< Vector2< float > > (AffineXf2d, AffineXf< Vector2< double > >)(AffineXf3f |
| | MR::AffineXf< Vector3< float > > (AffineXf3d, AffineXf< Vector3< double > >)) template< typename T > using AffineXf2 |
| | MR::RigidXf3< float > (RigidXf3d, RigidXf3< double >)) 1((template< typename T > struct) |
| | MR::RigidScaleXf3< float > (RigidScaleXf3d, RigidScaleXf3< double >)) class PointToPointAligningTransform |
| | MR::Sphere< Vector2< float > > (Sphere2d, Sphere< Vector2< double > >)(Sphere3f |
| | MR::Sphere< Vector3< float > > (Sphere3d, Sphere< Vector3< double > >)) template< typename T > using Sphere2 |
| | MR::Line< Vector2< float > > (Line2d, Line< Vector2< double > >)(Line3f |
| | MR::Line< Vector3< float > > (Line3d, Line< Vector3< double > >)) template< typename T > using Line2 |
| | MR::LineSegm< Vector2< float > > (LineSegm2d, LineSegm< Vector2< double > >)(LineSegm3f |
| | MR::LineSegm< Vector3< float > > (LineSegm3d, LineSegm< Vector3< double > >)) template< typename T > using LineSegm2 |
| | MR::Parabola< float > (Parabolad, Parabola< double >)) 1((template< typename T > class) |
| | MR::BestFitParabola< float > (BestFitParabolad, BestFitParabola< double >)) 1((template< typename T > class) |
| | MR::Cylinder3< float > (Cylinder3d, Cylinder3< double >)) 1((template< typename T > class) |
| | MR::Cone3< float > (Cone3d, Cone3< double >)) template< typename V > using Contour |
| | No canonical typedefs here, because those ultimately boil to std::vector, which isn't under our control.
|
| | MR::Plane3< float > (Plane3d, Plane3< double >)) 1((template< typename V > struct MRMESH_CLASS) |
| | MR::Box< int > (Box1i64, Box< Int64 >)(Box1f |
| | MR::Box< float > (Box1d, Box< double >)(Box2i |
| | MR::Box< Vector2< int > > (Box2i64, Box< Vector2< Int64 > >)(Box2f |
| | MR::Box< Vector2< float > > (Box2d, Box< Vector2< double > >)(Box3i |
| | MR::Box< Vector3< int > > (Box3i64, Box< Vector3< Int64 > >)(Box3f |
| | MR::Box< Vector3< float > > (Box3d, Box< Vector3< double > >)) using Box1ll |
| template<typename V> |
| struct MRMESH_CLASS | MR::Ball (Ball1f, Ball< float >)(Ball1d |
| struct MRMESH_CLASS | MR::Ball< double > (Ball2f, Ball< Vector2< float > >)(Ball2d |
| struct MRMESH_CLASS | MR::Ball< Vector2< double > > (Ball3f, Ball< Vector3< float > >)(Ball3d |
| template<typename V> |
| struct MRMESH_CLASS | MR::CubicBezierCurve (CubicBezierCurve2f, CubicBezierCurve< Vector2< float > >)(CubicBezierCurve2d |
| struct MRMESH_CLASS | MR::CubicBezierCurve< Vector2< double > > (CubicBezierCurve3f, CubicBezierCurve< Vector3< float > >)(CubicBezierCurve3d |
| | MR::QuadraticForm< Vector2< float > > (QuadraticForm2d, QuadraticForm< Vector2< double > >)(QuadraticForm3f |
| | MR::QuadraticForm< Vector3< float > > (QuadraticForm3d, QuadraticForm< Vector3< double > >)) template< typename T > using QuadraticForm2 |
| | MR::Quaternion< float > (Quaterniond, Quaternion< double >)) template< typename T > using Triangle3 |
| | No canonical typedefs because std::array is not under our control.
|
| | MR::SegmPoint< float > (SegmPointd, SegmPoint< double >)) struct EdgePoint |
| | MR::TriPoint< float > (TriPointd, TriPoint< double >)) struct PointOnFace |
| template<typename T, typename I> |
| class MRMESH_CLASS | MR::Vector (Edges, Vector< TwoVertIds, UndirectedEdgeId >)(Triangulation |
| | mapping from UndirectedEdgeId to its end vertices
|
| class MRMESH_CLASS | MR::Vector< ThreeVertIds, FaceId > (TriCornerUVCoords, Vector< ThreeUVCoords, FaceId >)(Dipoles |
| | mapping from FaceId to a triple of UV-coordinates
|
| class MRMESH_CLASS | MR::Vector< Dipole, NodeId > (FaceMap, Vector< FaceId, FaceId >)(VertMap |
| class MRMESH_CLASS | MR::Vector< VertId, VertId > (EdgeMap, Vector< EdgeId, EdgeId >)(UndirectedEdgeMap |
| class MRMESH_CLASS | MR::Vector< UndirectedEdgeId, UndirectedEdgeId > (ObjMap, Vector< ObjId, ObjId >)(WholeEdgeMap |
| | mapping of whole edges: map[e]->f, map[e.sym()]->f.sym(), where only map[e] for even edges is stored
|
| class MRMESH_CLASS | MR::Vector< EdgeId, UndirectedEdgeId > (UndirectedEdge2RegionMap, Vector< RegionId, UndirectedEdgeId >)(Face2RegionMap |
| class MRMESH_CLASS | MR::Vector< RegionId, FaceId > (Vert2RegionMap, Vector< RegionId, VertId >)(VertCoords |
| class MRMESH_CLASS | MR::Vector< Vector3f, VertId > (VertCoords2, Vector< Vector2f, VertId >)(VertNormals |
| class MRMESH_CLASS | MR::Vector< Vector3f, VertId > (VertUVCoords, Vector< UVCoord, VertId >)(FaceNormals |
| class MRMESH_CLASS | MR::Vector< Vector3f, FaceId > (TexturePerFace, Vector< TextureId, FaceId >)(VertColors |
| class MRMESH_CLASS | MR::Vector< Color, VertId > (FaceColors, Vector< Color, FaceId >)(EdgeColors |
| class MRMESH_CLASS | MR::Vector< Color, EdgeId > (UndirectedEdgeColors, Vector< Color, UndirectedEdgeId >)(VertScalars |
| class MRMESH_CLASS | MR::Vector< float, VertId > (FaceScalars, Vector< float, FaceId >)(EdgeScalars |
| class MRMESH_CLASS | MR::Vector< float, EdgeId > (UndirectedEdgeScalars, Vector< float, UndirectedEdgeId >)) using VertPredicate |
| template<typename T> |
| bool | MR::contains (const std::function< bool(Id< T >)> &pred, Id< T > id) |
| template<typename T, typename I> |
| struct MRMESH_CLASS | MR::BMap (FaceBMap, BMap< FaceId, FaceId >)(VertBMap |
| struct MRMESH_CLASS | MR::BMap< VertId, VertId > (EdgeBMap, BMap< EdgeId, EdgeId >)(UndirectedEdgeBMap |
| struct MRMESH_CLASS | MR::BMap< UndirectedEdgeId, UndirectedEdgeId > (WholeEdgeBMap, BMap< EdgeId, UndirectedEdgeId >)) template< typename T |
| template<typename T> |
| struct MRMESH_CLASS | MR::MeshRegion (MeshPart, MeshRegion< FaceTag >)(MeshVertPart |
| | MR::Polyline< Vector2f > (Polyline3, Polyline< Vector3f >)) 1((template< typename V > class MRMESH_CLASS) |
| | MR::AABBTreePolyline< Vector2f > (AABBTreePolyline3, AABBTreePolyline< Vector3f >)) template< typename T > struct IntersectionPrecomputes |
| | MR::PolylineProjectionResult< Vector2f > (PolylineProjectionResult3, PolylineProjectionResult< Vector3f >)) 1((template< typename V > struct) |
| | MR::PolylineProjectionWithOffsetResult< Vector2f > (PolylineProjectionWithOffsetResult3, PolylineProjectionWithOffsetResult< Vector3f >)) class DistanceMap |
| template<typename Tag> |
| class MRMESH_CLASS | MR::ColorMapAggregator (VertColorMapAggregator, ColorMapAggregator< VertTag >)(UndirEdgeColorMapAggregator |
| class MRMESH_CLASS | MR::ColorMapAggregator< UndirectedEdgeTag > (FaceColorMapAggregator, ColorMapAggregator< FaceTag >)) template< typename T > class FewSmallest |
| template<typename T> |
| constexpr T | MR::sqr (T x) noexcept |
| | squared value
|
| template<typename T> |
| constexpr int | MR::sgn (T x) noexcept |
| | sign of given value in { -1, 0, 1 }
|
| template<typename T> |
| constexpr T | MR::distance (T x, T y) noexcept |
| | absolute difference between two value
|
| template<typename T> |
| constexpr T | MR::distanceSq (T x, T y) noexcept |
| | squared difference between two value
|
| template<typename V, typename T> |
| constexpr auto | MR::lerp (V v0, V v1, T t) noexcept |
| | Linear interpolation: returns v0 when t==0 and v1 when t==1.
|
| template<class... Ts> |
| | MR::overloaded (Ts...) -> overloaded< Ts... > |
| | explicit deduction guide (not needed as of C++20, but still needed in Clang)
|
| constexpr auto | MR::Locale::translate_noop (const char *str) noexcept |
| | special no-op inline functions to mark string literal as translatable
|
| constexpr auto | MR::Locale::translate_noop (const char *ctx, const char *str) noexcept |
| constexpr auto | MR::Locale::translate_noop (const char *single, const char *plural, Int64 n) noexcept |
| constexpr auto | MR::Locale::translate_noop (const char *ctx, const char *single, const char *plural, Int64 n) noexcept |
| Vector3f | MR::orgPnt (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | returns coordinates of the edge origin
|
| Vector3f | MR::destPnt (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | returns coordinates of the edge destination
|
| Vector3f | MR::edgeVector (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | returns vector equal to edge destination point minus edge origin point
|
| LineSegm3f | MR::edgeSegment (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | returns line segment of given edge
|
| Vector3f | MR::edgePoint (const MeshTopology &topology, const VertCoords &points, EdgeId e, float f) |
| | returns a point on the edge: origin point for f=0 and destination point for f=1
|
| Vector3f | MR::edgePoint (const MeshTopology &topology, const VertCoords &points, const MeshEdgePoint &ep) |
| | computes coordinates of point given as edge and relative position on it
|
| Vector3f | MR::edgeCenter (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| | computes the center of given edge
|
| void | MR::getLeftTriPoints (const MeshTopology &topology, const VertCoords &points, EdgeId e, Vector3f &v0, Vector3f &v1, Vector3f &v2) |
| | returns three points of left face of e: v0 = orgPnt( e ), v1 = destPnt( e )
|
| MR_BIND_IGNORE void | MR::getLeftTriPoints (const MeshTopology &topology, const VertCoords &points, EdgeId e, Vector3f(&v)[3]) |
| Triangle3f | MR::getLeftTriPoints (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | returns three points of left face of e: res[0] = orgPnt( e ), res[1] = destPnt( e )
|
| void | MR::getTriPoints (const MeshTopology &topology, const VertCoords &points, FaceId f, Vector3f &v0, Vector3f &v1, Vector3f &v2) |
| | returns three points of given face
|
| MR_BIND_IGNORE void | MR::getTriPoints (const MeshTopology &topology, const VertCoords &points, FaceId f, Vector3f(&v)[3]) |
| Triangle3f | MR::getTriPoints (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns three points of given face
|
| Vector3f | MR::triPoint (const MeshTopology &topology, const VertCoords &points, const MeshTriPoint &p) |
| | computes coordinates of point given as face and barycentric representation
|
| Vector3f | MR::triCenter (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns the centroid of given triangle
|
| float | MR::triangleAspectRatio (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns aspect ratio of given mesh triangle equal to the ratio of the circum-radius to twice its in-radius
|
| float | MR::circumcircleDiameterSq (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns squared circumcircle diameter of given mesh triangle
|
| float | MR::circumcircleDiameter (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns circumcircle diameter of given mesh triangle
|
| MeshTriPoint | MR::toTriPoint (const MeshTopology &topology, const VertCoords &points, FaceId f, const Vector3f &p) |
| | converts face id and 3d point into barycentric representation
|
| MeshTriPoint | MR::toTriPoint (const MeshTopology &topology, const VertCoords &points, const PointOnFace &p) |
| | converts face id and 3d point into barycentric representation
|
| MeshEdgePoint | MR::toEdgePoint (const MeshTopology &topology, const VertCoords &points, EdgeId e, const Vector3f &p) |
| | converts edge and 3d point into edge-point representation
|
| VertId | MR::getClosestVertex (const MeshTopology &topology, const VertCoords &points, const PointOnFace &p) |
| | returns one of three face vertices, closest to given point
|
| VertId | MR::getClosestVertex (const MeshTopology &topology, const VertCoords &points, const MeshTriPoint &p) |
| | returns one of three face vertices, closest to given point
|
| UndirectedEdgeId | MR::getClosestEdge (const MeshTopology &topology, const VertCoords &points, const PointOnFace &p) |
| | returns one of three face edges, closest to given point
|
| UndirectedEdgeId | MR::getClosestEdge (const MeshTopology &topology, const VertCoords &points, const MeshTriPoint &p) |
| | returns one of three face edges, closest to given point
|
| float | MR::edgeLength (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| | returns Euclidean length of the edge
|
| UndirectedEdgeScalars | MR::edgeLengths (const MeshTopology &topology, const VertCoords &points) |
| | computes and returns the lengths of all edges in the mesh
|
| float | MR::edgeLengthSq (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| | returns squared Euclidean length of the edge (faster to compute than length)
|
| Vector3f | MR::leftDirDblArea (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | computes directed double area of left triangular face of given edge
|
| Vector3f | MR::dirDblArea (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | computes directed double area for a triangular face from its vertices
|
| Vector< Vector3f, VertId > | MR::dirDblAreas (const MeshTopology &topology, const VertCoords &points, const VertBitSet *region=nullptr) |
| | computes and returns the directed double area for every (region) vertex in the mesh
|
| float | MR::dblArea (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns twice the area of given face
|
| float | MR::area (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns the area of given face
|
| MR_BIND_IGNORE double | MR::area (const MeshTopology &topology, const VertCoords &points, const FaceBitSet &fs) |
| double | MR::area (const MeshTopology &topology, const VertCoords &points, const FaceBitSet *fs=nullptr) |
| | computes the area of given face-region (or whole mesh)
|
| MR_BIND_IGNORE Vector3d | MR::dirArea (const MeshTopology &topology, const VertCoords &points, const FaceBitSet &fs) |
| Vector3d | MR::dirArea (const MeshTopology &topology, const VertCoords &points, const FaceBitSet *fs=nullptr) |
| | computes the sum of directed areas for faces from given region (or whole mesh)
|
| MR_BIND_IGNORE double | MR::projArea (const MeshTopology &topology, const VertCoords &points, const Vector3f &dir, const FaceBitSet &fs) |
| double | MR::projArea (const MeshTopology &topology, const VertCoords &points, const Vector3f &dir, const FaceBitSet *fs=nullptr) |
| | computes the sum of absolute projected area of faces from given region (or whole mesh) as visible if look from given direction
|
| double | MR::volume (const MeshTopology &topology, const VertCoords &points, const FaceBitSet *region=nullptr) |
| double | MR::holePerimeter (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | computes the perimeter of the hole specified by one of its edges with no valid left face (left is hole)
|
| Vector3d | MR::holeDirArea (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| Vector3f | MR::leftTangent (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | computes unit vector that is both orthogonal to given edge and to the normal of its left triangle, the vector is directed inside left triangle
|
| Vector3f | MR::leftNormal (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| | computes triangular face normal from its vertices
|
| Vector3f | MR::normal (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | computes triangular face normal from its vertices
|
| Plane3f | MR::getPlane3f (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| | returns the plane containing given triangular face with normal looking outwards
|
| Plane3d | MR::getPlane3d (const MeshTopology &topology, const VertCoords &points, FaceId f) |
| Vector3f | MR::dirDblArea (const MeshTopology &topology, const VertCoords &points, VertId v) |
| | computes sum of directed double areas of all triangles around given vertex
|
| float | MR::dblArea (const MeshTopology &topology, const VertCoords &points, VertId v) |
| | computes the length of summed directed double areas of all triangles around given vertex
|
| Vector3f | MR::normal (const MeshTopology &topology, const VertCoords &points, VertId v) |
| | computes normal in a vertex using sum of directed areas of neighboring triangles
|
| Vector3f | MR::normal (const MeshTopology &topology, const VertCoords &points, const MeshTriPoint &p) |
| Vector3f | MR::pseudonormal (const MeshTopology &topology, const VertCoords &points, VertId v, const FaceBitSet *region=nullptr) |
| Vector3f | MR::pseudonormal (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e, const FaceBitSet *region=nullptr) |
| | computes normalized half sum of face normals sharing given edge (only (region) faces will be considered);
|
| Vector3f | MR::pseudonormal (const MeshTopology &topology, const VertCoords &points, const MeshTriPoint &p, const FaceBitSet *region=nullptr) |
| float | MR::sumAngles (const MeshTopology &topology, const VertCoords &points, VertId v, bool *outBoundaryVert=nullptr) |
| | computes the sum of triangle angles at given vertex; optionally returns whether the vertex is on boundary
|
| Expected< VertBitSet > | MR::findSpikeVertices (const MeshTopology &topology, const VertCoords &points, float minSumAngle, const VertBitSet *region=nullptr, const ProgressCallback &cb={}) |
| | returns vertices where the sum of triangle angles is below given threshold
|
| float | MR::dihedralAngleSin (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| float | MR::dihedralAngleCos (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| float | MR::dihedralAngle (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| float | MR::discreteMeanCurvature (const MeshTopology &topology, const VertCoords &points, VertId v) |
| float | MR::discreteMeanCurvature (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId e) |
| float | MR::discreteGaussianCurvature (const MeshTopology &topology, const VertCoords &points, VertId v, bool *outBoundaryVert=nullptr) |
| UndirectedEdgeBitSet | MR::findCreaseEdges (const MeshTopology &topology, const VertCoords &points, float angleFromPlanar) |
| | finds all mesh edges where dihedral angle is distinct from planar PI angle on at least given value
|
| float | MR::leftCotan (const MeshTopology &topology, const VertCoords &points, EdgeId e) |
| float | MR::cotan (const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId ue) |
| QuadraticForm3f | MR::quadraticForm (const MeshTopology &topology, const VertCoords &points, VertId v, bool angleWeigted, const FaceBitSet *region=nullptr, const UndirectedEdgeBitSet *creases=nullptr) |
| Box3f | MR::computeBoundingBox (const MeshTopology &topology, const VertCoords &points, const FaceBitSet *region, const AffineXf3f *toWorld=nullptr) |
| float | MR::averageEdgeLength (const MeshTopology &topology, const VertCoords &points) |
| | computes average length of an edge in the mesh given by (topology, points)
|
| Vector3f | MR::findCenterFromPoints (const MeshTopology &topology, const VertCoords &points) |
| | computes average position of all valid mesh vertices
|
| Vector3f | MR::findCenterFromFaces (const MeshTopology &topology, const VertCoords &points) |
| | computes center of mass considering that density of all triangles is the same
|
| Vector3f | MR::findCenterFromBBox (const MeshTopology &topology, const VertCoords &points) |
| | computes bounding box and returns its center
|
| | MR::MeshOrPoints::MeshOrPoints (const MeshPart &mp) |
| | MR::MeshOrPoints::MeshOrPoints (const PointCloudPart &pcp) |
| | MR::MeshOrPoints::MeshOrPoints (const Mesh &mesh) |
| | these constructors are redundant for C++, but important for python bindings
|
| | MR::MeshOrPoints::MeshOrPoints (const PointCloud &pc) |
| const MeshPart * | MR::MeshOrPoints::asMeshPart () const |
| | if this object holds a mesh part then returns pointer on it, otherwise returns nullptr
|
| const PointCloudPart * | MR::MeshOrPoints::asPointCloudPart () const |
| | if this object holds a point cloud part then returns pointer on it, otherwise returns nullptr
|
| Box3f | MR::MeshOrPoints::getObjBoundingBox () const |
| void | MR::MeshOrPoints::cacheAABBTree () const |
| | if AABBTree is already built does nothing otherwise builds and caches it
|
| Box3f | MR::MeshOrPoints::computeBoundingBox (const AffineXf3f *toWorld=nullptr) const |
| void | MR::MeshOrPoints::accumulate (PointAccumulator &accum, const AffineXf3f *xf=nullptr) const |
| | Adds in existing PointAccumulator the elements of the contained object.
|
| std::optional< VertBitSet > | MR::MeshOrPoints::pointsGridSampling (float voxelSize, size_t maxVoxels=500000, const ProgressCallback &cb={}) const |
| const VertCoords & | MR::MeshOrPoints::points () const |
| | gives access to points-vector (which can include invalid points as well)
|
| const VertBitSet & | MR::MeshOrPoints::validPoints () const |
| | gives access to bit set of valid points
|
| std::function< Vector3f(VertId)> | MR::MeshOrPoints::normals () const |
| | returns normals generating function: VertId->normal (or empty for point cloud without normals)
|
| std::function< float(VertId)> | MR::MeshOrPoints::weights () const |
| | MR::MeshOrPoints::ProjectionResult::operator bool () const |
| bool | MR::MeshOrPoints::ProjectionResult::valid () const |
| std::function< ProjectionResult(const Vector3f &)> | MR::MeshOrPoints::projector () const |
| | returns a function that finds projection (closest) points on this: Vector3f->ProjectionResult
|
| LimitedProjectorFunc | MR::MeshOrPoints::limitedProjector () const |
| std::function< MeshOrPoints::ProjectionResult(const Vector3f &)> | MR::MeshOrPointsXf::projector () const |
| | returns a function that finds projection (closest) points on this: Vector3f->ProjectionResult
|
| MeshOrPoints::LimitedProjectorFunc | MR::MeshOrPointsXf::limitedProjector () const |
| std::optional< MeshOrPoints > | MR::getMeshOrPoints (const Object *obj) |
| | constructs MeshOrPoints from ObjectMesh or ObjectPoints, otherwise returns nullopt
|
| std::optional< MeshOrPointsXf > | MR::getMeshOrPointsXf (const Object *obj) |
| void | MR::projectOnAll (const Vector3f &pt, const AABBTreeObjects &tree, float upDistLimitSq, const ProjectOnAllCallback &callback, ObjId skipObjId={}) |
| | finds closest point on every object within given distance
|
| MeshOrPoints::ProjectionResult | MR::projectWorldPointOntoObject (const Vector3f &p, const Object &obj) |
| | Projects a point onto an object, in world space. Returns .valid() == false if this object type isn't projectable onto.
|
| MeshOrPoints::ProjectionResult | MR::projectWorldPointOntoObjectsRecursive (const Vector3f &p, const Object *root=nullptr, std::function< bool(const Object &)> projectPred=nullptr, std::function< bool(const Object &)> recursePred=nullptr) |
| | MR::MeshOrPointsObject::MeshOrPointsObject () |
| | MR::MeshOrPointsObject::MeshOrPointsObject (std::shared_ptr< VisualObject > vo) |
| | MR::MeshOrPointsObject::MeshOrPointsObject (std::shared_ptr< ObjectMesh > om) |
| | MR::MeshOrPointsObject::MeshOrPointsObject (std::shared_ptr< ObjectPoints > op) |
| void | MR::MeshOrPointsObject::set (std::shared_ptr< ObjectMesh > om) |
| | set to hold ObjectMesh
|
| ObjectMesh * | MR::MeshOrPointsObject::asObjectMesh () const |
| | if holding ObjectMesh, return pointer to it, otherwise return nullptr
|
| void | MR::MeshOrPointsObject::set (std::shared_ptr< ObjectPoints > op) |
| | set to hold ObjectPoints
|
| ObjectPoints * | MR::MeshOrPointsObject::asObjectPoints () const |
| | if holding ObjectPoints, return pointer to it, otherwise return nullptr
|
| void | MR::MeshOrPointsObject::reset () |
| const std::shared_ptr< VisualObject > & | MR::MeshOrPointsObject::operator-> () const |
| const std::shared_ptr< VisualObject > & | MR::MeshOrPointsObject::get () const |
| bool | MR::MeshOrPointsObject::operator== (std::shared_ptr< VisualObject > other) const |
| MeshOrPoints | MR::MeshOrPointsObject::meshOrPoints () const |
| | get class that hold either mesh part or point cloud
|
| Expected< std::vector< FaceBitSet > > | MR::findOverhangs (const Mesh &mesh, const FindOverhangsSettings &settings) |
| | Find face regions that might create overhangs.
|
| | MR::MeshRegion< RegionTag >::MeshRegion (const Mesh &m, const TaggedBitSet< RegionTag > *bs=nullptr) noexcept |
| | nullptr here means whole mesh
|
| | MR::MeshRegion< RegionTag >::MeshRegion (const MeshRegion &other) noexcept=default |
| | Make this assignable. A better idea would be to rewrite the class to not use references, but doing this instead preserves API compatibility.
|
| MeshRegion & | MR::MeshRegion< RegionTag >::operator= (const MeshRegion &other) noexcept |
| FaceBitSet | MR::patchMesh (Mesh &mesh, const FaceBitSet &patchBS, const FillHoleNicelySettings &settings={}) |
| void | MR::replicateZ (Mesh &m, const Mesh &target) |
| | adjusts z-coordinates of (m) vertices to make adjusted (m) similar to (target)
|
| template<typename T> |
| auto | MR::onEdgeSplitVertAttribute (const Mesh &mesh, Vector< T, VertId > &data) |
| template<typename T> |
| auto | MR::onEdgeSplitFaceAttribute (const Mesh &mesh, Vector< T, FaceId > &data) |
| OnEdgeSplit | MR::meshOnEdgeSplitAttribute (const Mesh &mesh, const MeshAttributesToUpdate ¶ms) |
| OnEdgeSplit | MR::meshOnEdgeSplitVertAttribute (const Mesh &mesh, const MeshAttributesToUpdate ¶ms) |
| OnEdgeSplit | MR::meshOnEdgeSplitFaceAttribute (const Mesh &mesh, const MeshAttributesToUpdate ¶ms) |
| std::optional< VertScalars > | MR::computeRayThicknessAtVertices (const Mesh &mesh, const ProgressCallback &progress={}) |
| | returns the distance from each vertex along minus normal to the nearest mesh intersection (or FLT_MAX if no intersection found)
|
| MR_BIND_IGNORE VertScalars | MR::computeThicknessAtVertices (const Mesh &mesh) |
| void | MR::MeshPoint::set (const Mesh &mesh, const MeshTriPoint &p) |
| MeshIntersectionResult | MR::rayInsideIntersect (const Mesh &mesh, const MeshPoint &m, float rayEnd=FLT_MAX) |
| | returns the nearest intersection between the mesh and the ray from given point along minus normal (inside the mesh)
|
| MeshIntersectionResult | MR::rayInsideIntersect (const Mesh &mesh, VertId v, float rayEnd=FLT_MAX) |
| InSphere | MR::findInSphere (const Mesh &mesh, const MeshPoint &m, const InSphereSearchSettings &settings) |
| | finds maximal sphere inscribed in the mesh touching point (p) with center along the normal at (p)
|
| InSphere | MR::findInSphere (const Mesh &mesh, VertId v, const InSphereSearchSettings &settings) |
| std::optional< VertScalars > | MR::computeInSphereThicknessAtVertices (const Mesh &mesh, const InSphereSearchSettings &settings, const ProgressCallback &progress={}) |
| | returns the thickness at each vertex as the diameter of the maximal inscribed sphere
|
| EdgeId | MR::MeshTopology::makeEdge () |
| | creates an edge not associated with any vertex or face
|
| bool | MR::MeshTopology::isLoneEdge (EdgeId a) const |
| | checks whether the edge is disconnected from all other edges and disassociated from all vertices and faces (as if after makeEdge)
|
| UndirectedEdgeId | MR::MeshTopology::lastNotLoneUndirectedEdge () const |
| | returns last not lone undirected edge id, or invalid id if no such edge exists
|
| EdgeId | MR::MeshTopology::lastNotLoneEdge () const |
| | returns last not lone edge id, or invalid id if no such edge exists
|
| void | MR::MeshTopology::excludeLoneEdges (UndirectedEdgeBitSet &edges) const |
| | remove all lone edges from given set
|
| size_t | MR::MeshTopology::edgeSize () const |
| | returns the number of half-edge records including lone ones
|
| size_t | MR::MeshTopology::edgeCapacity () const |
| | returns the number of allocated edge records
|
| size_t | MR::MeshTopology::undirectedEdgeSize () const |
| | returns the number of undirected edges (pairs of half-edges) including lone ones
|
| size_t | MR::MeshTopology::undirectedEdgeCapacity () const |
| | returns the number of allocated undirected edges (pairs of half-edges)
|
| size_t | MR::MeshTopology::computeNotLoneUndirectedEdges () const |
| | computes the number of not-lone (valid) undirected edges
|
| UndirectedEdgeBitSet | MR::MeshTopology::findNotLoneUndirectedEdges () const |
| | finds and returns all not-lone (valid) undirected edges
|
| void | MR::MeshTopology::edgeReserve (size_t newCapacity) |
| | sets the capacity of half-edges vector
|
| bool | MR::MeshTopology::hasEdge (EdgeId e) const |
| | returns true if given edge is within valid range and not-lone
|
| size_t | MR::MeshTopology::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| void | MR::MeshTopology::shrinkToFit () |
| | requests the removal of unused capacity
|
| void | MR::MeshTopology::splice (EdgeId a, EdgeId b) |
| EdgeId | MR::MeshTopology::collapseEdge (EdgeId e, const std::function< void(EdgeId del, EdgeId rem)> &onEdgeDel) |
| EdgeId | MR::MeshTopology::next (EdgeId he) const |
| | next (counter clock wise) half-edge in the origin ring
|
| EdgeId | MR::MeshTopology::prev (EdgeId he) const |
| | previous (clock wise) half-edge in the origin ring
|
| VertId | MR::MeshTopology::org (EdgeId he) const |
| | returns origin vertex of half-edge
|
| VertId | MR::MeshTopology::dest (EdgeId he) const |
| | returns destination vertex of half-edge
|
| FaceId | MR::MeshTopology::left (EdgeId he) const |
| | returns left face of half-edge
|
| FaceId | MR::MeshTopology::right (EdgeId he) const |
| | returns right face of half-edge
|
| void | MR::MeshTopology::setOrg (EdgeId a, VertId v) |
| void | MR::MeshTopology::setLeft (EdgeId a, FaceId f) |
| bool | MR::MeshTopology::fromSameOriginRing (EdgeId a, EdgeId b) const |
| | returns true if a and b are both from the same origin ring
|
| bool | MR::MeshTopology::fromSameLeftRing (EdgeId a, EdgeId b) const |
| | returns true if a and b are both from the same left face ring
|
| int | MR::MeshTopology::getOrgDegree (EdgeId a) const |
| | returns the number of edges around the origin vertex, returns 1 for lone edges
|
| int | MR::MeshTopology::getVertDegree (VertId v) const |
| | returns the number of edges around the given vertex
|
| int | MR::MeshTopology::getLeftDegree (EdgeId a) const |
| | returns the number of edges around the left face: 3 for triangular faces, ...
|
| int | MR::MeshTopology::getFaceDegree (FaceId f) const |
| | returns the number of edges around the given face: 3 for triangular faces, ...
|
| bool | MR::MeshTopology::isLeftTri (EdgeId a) const |
| | returns true if the cell to the left of a is triangular
|
| void | MR::MeshTopology::getTriVerts (FaceId f, VertId &v0, VertId &v1, VertId &v2) const |
| MR_BIND_IGNORE void | MR::MeshTopology::getTriVerts (FaceId f, VertId(&v)[3]) const |
| void | MR::MeshTopology::getTriVerts (FaceId f, ThreeVertIds &v) const |
| | This one is not in the bindings because of the reference-to-array parameter.
|
| ThreeVertIds | MR::MeshTopology::getTriVerts (FaceId f) const |
| bool | MR::MeshTopology::isTriVert (FaceId f, VertId v) const |
| | return true if triangular face (f) has (v) as one of its vertices
|
| std::vector< ThreeVertIds > | MR::MeshTopology::getAllTriVerts () const |
| | returns three vertex ids for valid triangles, invalid triangles are skipped
|
| Triangulation | MR::MeshTopology::getTriangulation () const |
| void | MR::MeshTopology::getLeftTriVerts (EdgeId a, VertId &v0, VertId &v1, VertId &v2) const |
| MR_BIND_IGNORE void | MR::MeshTopology::getLeftTriVerts (EdgeId a, VertId(&v)[3]) const |
| void | MR::MeshTopology::getLeftTriVerts (EdgeId a, ThreeVertIds &v) const |
| | This one is not in the bindings because of the reference-to-array parameter.
|
| ThreeVertIds | MR::MeshTopology::getLeftTriVerts (EdgeId a) const |
| template<typename T> |
| void | MR::MeshTopology::forEachVertex (const MeshTriPoint &p, T &&callback) const |
| void | MR::MeshTopology::getLeftTriEdges (EdgeId e0, EdgeId &e1, EdgeId &e2) const |
| void | MR::MeshTopology::getTriEdges (FaceId f, EdgeId &e0, EdgeId &e1, EdgeId &e2) const |
| MR_BIND_IGNORE void | MR::MeshTopology::getTriEdges (FaceId f, EdgeId(&e)[3]) const |
| bool | MR::MeshTopology::isLeftQuad (EdgeId a) const |
| | This one is not in the bindings because of the reference-to-array parameter.
|
| const Vector< EdgeId, VertId > & | MR::MeshTopology::edgePerVertex () const |
| | for all valid vertices this vector contains an edge with the origin there
|
| EdgeId | MR::MeshTopology::edgeWithOrg (VertId a) const |
| | returns valid edge if given vertex is present in the mesh
|
| bool | MR::MeshTopology::hasVert (VertId a) const |
| | returns true if given vertex is present in the mesh
|
| int | MR::MeshTopology::numValidVerts () const |
| | returns the number of valid vertices
|
| VertId | MR::MeshTopology::lastValidVert () const |
| | returns last valid vertex id, or invalid id if no single valid vertex exists
|
| VertId | MR::MeshTopology::addVertId () |
| | creates new vert-id not associated with any edge yet
|
| void | MR::MeshTopology::vertResize (size_t newSize) |
| | explicitly increases the size of vertices vector
|
| void | MR::MeshTopology::vertResizeWithReserve (size_t newSize) |
| | explicitly increases the size of vertices vector, doubling the current capacity if it was not enough
|
| void | MR::MeshTopology::vertReserve (size_t newCapacity) |
| | sets the capacity of vertices vector
|
| size_t | MR::MeshTopology::vertSize () const |
| | returns the number of vertex records including invalid ones
|
| size_t | MR::MeshTopology::vertCapacity () const |
| | returns the number of allocated vert records
|
| const VertBitSet & | MR::MeshTopology::getValidVerts () const |
| | returns cached set of all valid vertices
|
| void | MR::MeshTopology::flip (VertBitSet &vs) const |
| | sets in (vs) all valid vertices that were not selected before the call, and resets other bits
|
| const VertBitSet & | MR::MeshTopology::getVertIds (const VertBitSet *region) const |
| | if region pointer is not null then converts it in reference, otherwise returns all valid vertices in the mesh
|
| const Vector< EdgeId, FaceId > & | MR::MeshTopology::edgePerFace () const |
| | for all valid faces this vector contains an edge with that face at left
|
| EdgeId | MR::MeshTopology::edgeWithLeft (FaceId a) const |
| | returns valid edge if given vertex is present in the mesh
|
| bool | MR::MeshTopology::hasFace (FaceId a) const |
| | returns true if given face is present in the mesh
|
| EdgeId | MR::MeshTopology::sharedEdge (FaceId l, FaceId r) const |
| | if two valid faces share the same edge then it is found and returned
|
| EdgeId | MR::MeshTopology::sharedVertInOrg (EdgeId a, EdgeId b) const |
| | if two valid edges share the same vertex then it is found and returned as Edge with this vertex in origin
|
| EdgeId | MR::MeshTopology::sharedVertInOrg (FaceId l, FaceId r) const |
| | if two valid faces share the same vertex then it is found and returned as Edge with this vertex in origin
|
| FaceId | MR::MeshTopology::sharedFace (EdgeId a, EdgeId b) const |
| | if two valid edges belong to same valid face then it is found and returned
|
| int | MR::MeshTopology::numValidFaces () const |
| | returns the number of valid faces
|
| FaceId | MR::MeshTopology::lastValidFace () const |
| | returns last valid face id, or invalid id if no single valid face exists
|
| FaceId | MR::MeshTopology::addFaceId () |
| | creates new face-id not associated with any edge yet
|
| void | MR::MeshTopology::deleteFace (FaceId f, const UndirectedEdgeBitSet *keepEdges=nullptr) |
| | deletes the face, also deletes its edges and vertices if they were not shared by other faces and not in
|
| void | MR::MeshTopology::deleteFaces (const FaceBitSet &fs, const UndirectedEdgeBitSet *keepEdges=nullptr) |
| | deletes multiple given faces by calling deleteFace for each
|
| void | MR::MeshTopology::faceResize (size_t newSize) |
| | explicitly increases the size of faces vector
|
| void | MR::MeshTopology::faceResizeWithReserve (size_t newSize) |
| | explicitly increases the size of faces vector, doubling the current capacity if it was not enough
|
| void | MR::MeshTopology::faceReserve (size_t newCapacity) |
| | sets the capacity of faces vector
|
| size_t | MR::MeshTopology::faceSize () const |
| | returns the number of face records including invalid ones
|
| size_t | MR::MeshTopology::faceCapacity () const |
| | returns the number of allocated face records
|
| const FaceBitSet & | MR::MeshTopology::getValidFaces () const |
| | returns cached set of all valid faces
|
| void | MR::MeshTopology::flip (FaceBitSet &fs) const |
| | sets in (fs) all valid faces that were not selected before the call, and resets other bits
|
| const FaceBitSet & | MR::MeshTopology::getFaceIds (const FaceBitSet *region) const |
| | if region pointer is not null then converts it in reference, otherwise returns all valid faces in the mesh
|
| EdgeId | MR::MeshTopology::bdEdgeSameLeft (EdgeId e, const FaceBitSet *region=nullptr) const |
| bool | MR::MeshTopology::isLeftBdFace (EdgeId e, const FaceBitSet *region=nullptr) const |
| EdgeId | MR::MeshTopology::bdEdgeWithLeft (FaceId f, const FaceBitSet *region=nullptr) const |
| bool | MR::MeshTopology::isBdFace (FaceId f, const FaceBitSet *region=nullptr) const |
| | returns true if given face belongs to the region and it has a boundary edge (isBdEdge(e,region) == true)
|
| FaceBitSet | MR::MeshTopology::findBdFaces (const FaceBitSet *region=nullptr) const |
| | returns all faces for which isBdFace(f, region) is true
|
| bool | MR::MeshTopology::isLeftInRegion (EdgeId e, const FaceBitSet *region=nullptr) const |
| | return true if left face of given edge belongs to region (or just have valid id if region is nullptr)
|
| bool | MR::MeshTopology::isInnerEdge (EdgeId e, const FaceBitSet *region=nullptr) const |
| | return true if given edge is inner for given region (or for whole mesh if region is nullptr)
|
| bool | MR::MeshTopology::isBdEdge (EdgeId e, const FaceBitSet *region=nullptr) const |
| EdgeBitSet | MR::MeshTopology::findLeftBdEdges (const FaceBitSet *region=nullptr, const EdgeBitSet *test=nullptr) const |
| | returns all (test) edges for which left(e) does not belong to the region and isBdEdge(e, region) is true
|
| EdgeId | MR::MeshTopology::bdEdgeSameOrigin (EdgeId e, const FaceBitSet *region=nullptr) const |
| bool | MR::MeshTopology::isBdVertexInOrg (EdgeId e, const FaceBitSet *region=nullptr) const |
| | returns true if edge's origin is on (region) boundary
|
| EdgeId | MR::MeshTopology::bdEdgeWithOrigin (VertId v, const FaceBitSet *region=nullptr) const |
| bool | MR::MeshTopology::isBdVertex (VertId v, const FaceBitSet *region=nullptr) const |
| | returns true if given vertex is on (region) boundary
|
| VertBitSet | MR::MeshTopology::findBdVerts (const FaceBitSet *region=nullptr, const VertBitSet *test=nullptr) const |
| | returns all (test) vertices for which isBdVertex(v, region) is true
|
| bool | MR::MeshTopology::isInnerOrBdVertex (VertId v, const FaceBitSet *region=nullptr) const |
| | returns true if one of incident faces of given vertex pertain to given region (or any such face exists if region is nullptr)
|
| bool | MR::MeshTopology::isLeftBdEdge (EdgeId e, const FaceBitSet *region=nullptr) const |
| | returns true if left face of given edge belongs to given region (if provided) and right face either does not exist or does not belong
|
| bool | MR::MeshTopology::isInnerOrBdEdge (EdgeId e, const FaceBitSet *region=nullptr) const |
| | return true if given edge is inner or boundary for given region (or for whole mesh if region is nullptr), returns false for lone edges
|
| EdgeId | MR::MeshTopology::nextLeftBd (EdgeId e, const FaceBitSet *region=nullptr, Turn turn=Turn::Rightmost) const |
| EdgeId | MR::MeshTopology::prevLeftBd (EdgeId e, const FaceBitSet *region=nullptr, Turn turn=Turn::Rightmost) const |
| EdgeId | MR::MeshTopology::findEdge (VertId o, VertId d) const |
| | finds and returns edge from o to d in the mesh; returns invalid edge otherwise
|
| bool | MR::MeshTopology::isClosed (const FaceBitSet *region=nullptr) const |
| | returns true if the mesh (region) does not have any neighboring holes
|
| std::vector< EdgeId > | MR::MeshTopology::findHoleRepresentiveEdges (const FaceBitSet *region=nullptr) const |
| int | MR::MeshTopology::findNumHoles (EdgeBitSet *holeRepresentativeEdges=nullptr) const |
| EdgeLoop | MR::MeshTopology::getLeftRing (EdgeId e) const |
| | returns full edge-loop of left face from (e) starting from (e) itself
|
| std::vector< EdgeLoop > | MR::MeshTopology::getLeftRings (const std::vector< EdgeId > &es) const |
| MR_BIND_IGNORE EdgeBitSet | MR::MeshTopology::findBoundaryEdges () const |
| | returns all boundary edges, where each edge does not have valid left face
|
| MR_BIND_IGNORE FaceBitSet | MR::MeshTopology::findBoundaryFaces (const FaceBitSet *region=nullptr) const |
| MR_BIND_IGNORE VertBitSet | MR::MeshTopology::findBoundaryVerts (const VertBitSet *region=nullptr) const |
| VertBitSet | MR::MeshTopology::getPathVertices (const EdgePath &path) const |
| | returns all vertices incident to path edges
|
| FaceBitSet | MR::MeshTopology::getPathLeftFaces (const EdgePath &path) const |
| | returns all valid left faces of path edges
|
| FaceBitSet | MR::MeshTopology::getPathRightFaces (const EdgePath &path) const |
| | returns all valid right faces of path edges
|
| void | MR::MeshTopology::flipEdge (EdgeId e) |
| template<typename T> |
| void | MR::MeshTopology::flipEdgesIn (EdgeId e0, T &&flipNeeded) |
| template<typename T> |
| void | MR::MeshTopology::flipEdgesIn (VertId v, T &&flipNeeded) |
| template<typename T> |
| void | MR::MeshTopology::flipEdgesOut (EdgeId e0, T &&flipNeeded) |
| template<typename T> |
| void | MR::MeshTopology::flipEdgesOut (VertId v, T &&flipNeeded) |
| EdgeId | MR::MeshTopology::splitEdge (EdgeId e, FaceBitSet *region=nullptr, FaceHashMap *new2Old=nullptr) |
| VertId | MR::MeshTopology::splitFace (FaceId f, FaceBitSet *region=nullptr, FaceHashMap *new2Old=nullptr) |
| void | MR::MeshTopology::flipOrientation (const UndirectedEdgeBitSet *fullComponents=nullptr) |
| void | MR::MeshTopology::addPart (const MeshTopology &from, const PartMapping &map={}, bool rearrangeTriangles=false) |
| void | MR::MeshTopology::addPart (const MeshTopology &from, FaceMap *outFmap=nullptr, VertMap *outVmap=nullptr, WholeEdgeMap *outEmap=nullptr, bool rearrangeTriangles=false) |
| void | MR::MeshTopology::addPartByMask (const MeshTopology &from, const FaceBitSet *fromFaces, const PartMapping &map={}) |
| | the same but copies only portion of (from) specified by fromFaces,
|
| MR_BIND_IGNORE void | MR::MeshTopology::addPartByMask (const MeshTopology &from, const FaceBitSet &fromFaces, const PartMapping &map={}) |
| | This is skipped in the bindings because it conflicts with the overload taking a pointer in C#. Since that overload is strictly more useful, we're keeping that one.
|
| void | MR::MeshTopology::addPartByMask (const MeshTopology &from, const FaceBitSet *fromFaces, bool flipOrientation=false, const std::vector< EdgePath > &thisContours={}, const std::vector< EdgePath > &fromContours={}, const PartMapping &map={}) |
| MR_BIND_IGNORE void | MR::MeshTopology::addPartByMask (const MeshTopology &from, const FaceBitSet &fromFaces, bool flipOrientation=false, const std::vector< EdgePath > &thisContours={}, const std::vector< EdgePath > &fromContours={}, const PartMapping &map={}) |
| | This is skipped in the bindings because it conflicts with the overload taking a pointer in C#. Since that overload is strictly more useful, we're keeping that one.
|
| void | MR::MeshTopology::rotateTriangles () |
| | for each triangle selects edgeWithLeft with minimal origin vertex
|
| void | MR::MeshTopology::pack (FaceMap *outFmap=nullptr, VertMap *outVmap=nullptr, WholeEdgeMap *outEmap=nullptr, bool rearrangeTriangles=false) |
| void | MR::MeshTopology::pack (const PackMapping &map) |
| void | MR::MeshTopology::packMinMem (const PackMapping &map) |
| void | MR::MeshTopology::write (std::ostream &s) const |
| | saves in binary stream
|
| Expected< void > | MR::MeshTopology::read (std::istream &s, ProgressCallback callback={}) |
| bool | MR::MeshTopology::operator== (const MeshTopology &b) const |
| | compare that two topologies are exactly the same
|
| void | MR::MeshTopology::resizeBeforeParallelAdd (size_t edgeSize, size_t vertSize, size_t faceSize) |
| void | MR::MeshTopology::addPackedPart (const MeshTopology &from, EdgeId toEdgeId, const FaceMap &fmap, const VertMap &vmap) |
| bool | MR::MeshTopology::computeValidsFromEdges (ProgressCallback cb={}) |
| void | MR::MeshTopology::stopUpdatingValids () |
| | stops updating validVerts(), validFaces(), numValidVerts(), numValidFaces() for parallel processing of mesh parts
|
| bool | MR::MeshTopology::updatingValids () const |
| | returns whether the methods validVerts(), validFaces(), numValidVerts(), numValidFaces() can be called
|
| void | MR::MeshTopology::preferEdges (const UndirectedEdgeBitSet &stableEdges) |
| bool | MR::MeshTopology::buildGridMesh (const GridSettings &settings, ProgressCallback cb={}) |
| | constructs triangular grid mesh topology in parallel
|
| bool | MR::MeshTopology::checkValidity (ProgressCallback cb={}, bool allVerts=true) const |
| bool | MR::MeshTopology::HalfEdgeRecord::operator== (const HalfEdgeRecord &b) const |
| | MR::MeshTopology::HalfEdgeRecord::HalfEdgeRecord () noexcept=default |
| | MR::MeshTopology::HalfEdgeRecord::HalfEdgeRecord (NoInit) noexcept |
| template<typename T, typename I> |
| Vector< T, I > | MR::rearrangeVectorByMap (const Vector< T, I > &oldVector, const BMap< I, I > &map) |
| | rearrange vector values by map (old.id -> new.id)
|
| | MR::MeshTopologyDiff::MeshTopologyDiff ()=default |
| | constructs minimal difference, where applyAndSwap( t ) will produce empty topology
|
| | MR::MeshTopologyDiff::MeshTopologyDiff (const MeshTopology &from, const MeshTopology &to) |
| | computes the difference, that can be applied to topology-from in order to get topology-to
|
| void | MR::MeshTopologyDiff::applyAndSwap (MeshTopology &t) |
| bool | MR::MeshTopologyDiff::any () const |
| size_t | MR::MeshTopologyDiff::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| FaceBitSet | MR::subdivideWithPlane (Mesh &mesh, const Plane3f &plane, FaceHashMap *new2Old=nullptr, float eps=0, std::function< void(EdgeId, EdgeId, float)> onEdgeSplitCallback=nullptr) |
| MR_BIND_IGNORE void | MR::trimWithPlane (Mesh &mesh, const Plane3f &plane, UndirectedEdgeBitSet *outCutEdges=nullptr, FaceHashMap *new2Old=nullptr, float eps=0, std::function< void(EdgeId, EdgeId, float)> onEdgeSplitCallback=nullptr) |
| | trim mesh by plane
|
| MR_BIND_IGNORE void | MR::trimWithPlane (Mesh &mesh, const Plane3f &plane, std::vector< EdgeLoop > *outCutContours, FaceHashMap *new2Old=nullptr, float eps=0, std::function< void(EdgeId, EdgeId, float)> onEdgeSplitCallback=nullptr) |
| | trim mesh by plane
|
| void | MR::trimWithPlane (Mesh &mesh, const TrimWithPlaneParams ¶ms, const TrimOptionalOutput &optOut={}) |
| | trim mesh by plane
|
| | MR::MeshTriPoint::MeshTriPoint ()=default |
| | MR::MeshTriPoint::MeshTriPoint (NoInit) |
| | MR::MeshTriPoint::MeshTriPoint (EdgeId e, TriPointf bary) |
| | MR::MeshTriPoint::MeshTriPoint (const MeshEdgePoint &ep) |
| | MR::MeshTriPoint::MeshTriPoint (const MeshTopology &topology, VertId v) |
| template<typename T> |
| | MR::MeshTriPoint::MeshTriPoint (EdgeId e, const Vector3< T > &p, const Vector3< T > &v0, const Vector3< T > &v1, const Vector3< T > &v2) |
| | given a point coordinates computes its barycentric coordinates
|
| VertId | MR::MeshTriPoint::inVertex (const MeshTopology &topology) const |
| | returns valid vertex id if the point is in vertex, otherwise returns invalid id
|
| bool | MR::MeshTriPoint::inVertex () const |
| | returns true if the point is in a vertex
|
| MeshEdgePoint | MR::MeshTriPoint::onEdge (const MeshTopology &topology) const |
| bool | MR::MeshTriPoint::isBd (const MeshTopology &topology, const FaceBitSet *region=nullptr) const |
| | returns true if the point is in vertex or on edge, and that location is on the boundary of the region
|
| bool | MR::MeshTriPoint::fromTriangle (const MeshTopology &topology, FaceId f) const |
| | returns true if the point is inside or on the boundary of given triangular face
|
| bool | MR::MeshTriPoint::valid () const |
| | consider this valid if the edge ID is valid
|
| | MR::MeshTriPoint::operator bool () const |
| MeshTriPoint | MR::MeshTriPoint::lnext (const MeshTopology &topology) const |
| | represents the same point relative to next edge in the same triangle
|
| MeshTriPoint | MR::MeshTriPoint::canonical (const MeshTopology &topology) const |
| | represents the same point relative to the topology.edgeWithLeft( topology.left( e ) )
|
| std::array< WeightedVertex, 3 > | MR::MeshTriPoint::getWeightedVerts (const MeshTopology &topology) const |
| | returns three weighted triangle's vertices with the sum of not-negative weights equal to 1, and the largest weight in the closest vertex
|
| bool | MR::MeshTriPoint::operator== (const MeshTriPoint &rhs) const =default |
| | returns true if two points are equal including equal not-unique representation
|
| auto | MR::MinArg< T, I >::asPair () const |
| void | MR::MinArg< T, I >::include (const std::pair< T, I > &p) |
| | changes val and arg if given point is smaller
|
| void | MR::MinArg< T, I >::include (T testVal, I testArg) |
| | changes val and arg if given point is smaller
|
| void | MR::MinArg< T, I >::include (const MinArg &s) |
| | changes val and arg if given point is smaller
|
| auto | MR::MaxArg< T, I >::asPair () const |
| void | MR::MaxArg< T, I >::include (const std::pair< T, I > &p) |
| | changes val and arg if given point is larger
|
| void | MR::MaxArg< T, I >::include (T testVal, I testArg) |
| | changes val and arg if given point is larger
|
| void | MR::MaxArg< T, I >::include (const MaxArg &s) |
| | changes val and arg if given point is larger
|
| auto | MR::MinMaxArg< T, I >::minPair () const |
| auto | MR::MinMaxArg< T, I >::maxPair () const |
| void | MR::MinMaxArg< T, I >::include (const std::pair< T, I > &p) |
| | changes min(Arg) and max(Arg) if necessary to include given point
|
| void | MR::MinMaxArg< T, I >::include (T v, I arg) |
| | changes min(Arg) and max(Arg) if necessary to include given point
|
| void | MR::MinMaxArg< T, I >::include (const MinMaxArg &s) |
| | changes min(Arg) and max(Arg) if necessary to include given segment
|
| Expected< LoadedObject > | MR::fromSceneMison (const std::filesystem::path &path, const ProgressCallback &callback={}) |
| Expected< LoadedObject > | MR::fromSceneMison (std::istream &in, const ProgressCallback &callback={}) |
| Mesh | MR::makeMovementBuildBody (const Contours3f &body, const Contours3f &trajectory, const MovementBuildBodyParams ¶ms={}) |
| virtual const ICPPairData & | MR::ICPGroupPairs::operator[] (size_t idx) const override |
| virtual ICPPairData & | MR::ICPGroupPairs::operator[] (size_t idx) override |
| virtual size_t | MR::ICPGroupPairs::size () const override |
| void | MR::updateGroupPairs (ICPGroupPairs &pairs, const ICPObjects &objs, ICPGroupProjector srcProjector, ICPGroupProjector tgtProjector, float cosThreshold, float distThresholdSq, bool mutualClosest) |
| | in each pair updates the target data and performs basic filtering (activation)
|
| virtual | MR::IICPTreeIndexer::~IICPTreeIndexer ()=default |
| virtual bool | MR::IICPTreeIndexer::fromSameNode (ICPLayer l, ICPElementId eI, ICPElementId eJ) const =0 |
| | returns true if eI and eJ are from same node
|
| virtual ObjBitSet | MR::IICPTreeIndexer::getElementLeaves (ICPLayer l, ICPElementId eId) const =0 |
| | returns bitset of leaves of given node
|
| virtual ICPElementBitSet | MR::IICPTreeIndexer::getElementNodes (ICPLayer l, ICPElementId eId) const =0 |
| virtual size_t | MR::IICPTreeIndexer::getNumElements (ICPLayer l) const =0 |
| virtual size_t | MR::IICPTreeIndexer::getNumLayers () const =0 |
| | MR::MultiwayICP::MultiwayICP (const ICPObjects &objects, const MultiwayICPSamplingParameters &samplingParams) |
| Vector< AffineXf3f, ObjId > | MR::MultiwayICP::calculateTransformations (const ProgressCallback &cb={}) |
| Vector< AffineXf3f, ObjId > | MR::MultiwayICP::calculateTransformationsFixFirst (const ProgressCallback &cb={}) |
| bool | MR::MultiwayICP::resamplePoints (const MultiwayICPSamplingParameters &samplingParams) |
| | select pairs with origin samples on all objects
|
| bool | MR::MultiwayICP::updateAllPointPairs (const ProgressCallback &cb={}) |
| void | MR::MultiwayICP::setParams (const ICPProperties &prop) |
| | tune algorithm params before run calculateTransformations()
|
| const ICPProperties & | MR::MultiwayICP::getParams () const |
| float | MR::MultiwayICP::getMeanSqDistToPoint (std::optional< double > value={}) const |
| float | MR::MultiwayICP::getMeanSqDistToPlane (std::optional< double > value={}) const |
| size_t | MR::MultiwayICP::getNumSamples () const |
| | computes the number of samples able to form pairs
|
| size_t | MR::MultiwayICP::getNumActivePairs () const |
| | computes the number of active point pairs
|
| void | MR::MultiwayICP::setPerIterationCallback (std::function< void(int inter)> callback) |
| | sets callback that will be called for each iteration
|
| bool | MR::MultiwayICP::devIndependentEquationsModeEnabled () const |
| void | MR::MultiwayICP::devEnableIndependentEquationsMode (bool on) |
| std::string | MR::MultiwayICP::getStatusInfo () const |
| | returns status info string
|
| const PairsPerLayer & | MR::MultiwayICP::getPairsPerLayer () const |
| | returns all pairs of all layers
|
| const IICPTreeIndexer * | MR::MultiwayICP::getCascadeIndexer () const |
| | MR::MutexOwner::MutexOwner () noexcept=default |
| | MR::MutexOwner::MutexOwner (const MutexOwner &) noexcept |
| | MR::MutexOwner::MutexOwner (MutexOwner &&) noexcept |
| MutexOwner & | MR::MutexOwner::operator= (const MutexOwner &) noexcept |
| MutexOwner & | MR::MutexOwner::operator= (MutexOwner &&) noexcept |
| constexpr | MR::NoDefInit< T >::NoDefInit () noexcept |
| void | MR::denoiseNormals (const Mesh &mesh, FaceNormals &normals, const Vector< float, UndirectedEdgeId > &v, float gamma) |
| void | MR::updateIndicator (const Mesh &mesh, Vector< float, UndirectedEdgeId > &v, const FaceNormals &normals, float beta, float gamma) |
| void | MR::updateIndicatorFast (const MeshTopology &topology, Vector< float, UndirectedEdgeId > &v, const FaceNormals &normals, float beta, float gamma) |
| Expected< void > | MR::meshDenoiseViaNormals (Mesh &mesh, const DenoiseViaNormalsSettings &settings={}) |
| void | MR::NormalsToPoints::prepare (const MeshTopology &topology, float guideWeight=1) |
| void | MR::NormalsToPoints::run (const VertCoords &guide, const FaceNormals &normals, VertCoords &points) |
| void | MR::NormalsToPoints::run (const VertCoords &guide, const FaceNormals &normals, VertCoords &points, float maxInitialDistSq) |
| virtual | MR::NormalsToPoints::ISolver::~ISolver ()=default |
| virtual void | MR::NormalsToPoints::ISolver::prepare (const MeshTopology &topology, float guideWeight)=0 |
| virtual void | MR::NormalsToPoints::ISolver::run (const VertCoords &guide, const FaceNormals &normals, VertCoords &points, float maxInitialDistSq)=0 |
| virtual | MR::ObjectComparableWithReference::~ObjectComparableWithReference ()=default |
| | MR::ObjectComparableWithReference::ObjectComparableWithReference ()=default |
| | We have no member variables, so lack of the implicit copy operations wouldn't matter, but MSVC warns on this, so we have to be explicit.
|
| | MR::ObjectComparableWithReference::ObjectComparableWithReference (const ObjectComparableWithReference &)=default |
| | MR::ObjectComparableWithReference::ObjectComparableWithReference (ObjectComparableWithReference &&)=default |
| ObjectComparableWithReference & | MR::ObjectComparableWithReference::operator= (const ObjectComparableWithReference &)=default |
| ObjectComparableWithReference & | MR::ObjectComparableWithReference::operator= (ObjectComparableWithReference &&)=default |
| virtual std::size_t | MR::ObjectComparableWithReference::numComparableProperties () const =0 |
| | Comparing properties:
|
| virtual std::string_view | MR::ObjectComparableWithReference::getComparablePropertyName (std::size_t i) const =0 |
| | i goes up to numComparableProperties(), exclusive.
|
| virtual std::optional< ComparableProperty > | MR::ObjectComparableWithReference::computeComparableProperty (std::size_t i) const =0 |
| virtual std::optional< ComparisonTolerance > | MR::ObjectComparableWithReference::getComparisonTolerence (std::size_t i) const =0 |
| virtual void | MR::ObjectComparableWithReference::setComparisonTolerance (std::size_t i, std::optional< ComparisonTolerance > newTolerance)=0 |
| virtual bool | MR::ObjectComparableWithReference::comparisonToleranceIsAlwaysOnlyPositive (std::size_t i) const |
| virtual std::size_t | MR::ObjectComparableWithReference::numComparisonReferenceValues () const |
| | Reference values:
|
| virtual std::string_view | MR::ObjectComparableWithReference::getComparisonReferenceValueName (std::size_t i) const =0 |
| | i goes up to numComparisonReferenceValues(), exclusive.
|
| virtual ComparisonReferenceValue | MR::ObjectComparableWithReference::getComparisonReferenceValue (std::size_t i) const =0 |
| virtual void | MR::ObjectComparableWithReference::setComparisonReferenceValue (std::size_t i, std::optional< ComparisonReferenceValue::Var > value)=0 |
| void | MR::ObjectComparableWithReference::setComparisonReferenceVal (std::size_t i, const ComparisonReferenceValue &value) |
| std::string_view | MR::toString (DimensionsVisualizePropertyType value) |
| | MR::ObjectDistanceMap::ObjectDistanceMap () |
| | MR::ObjectDistanceMap::ObjectDistanceMap (ObjectDistanceMap &&) noexcept=default |
| ObjectDistanceMap & | MR::ObjectDistanceMap::operator= (ObjectDistanceMap &&) noexcept=default |
| virtual | MR::ObjectDistanceMap::~ObjectDistanceMap ()=default |
| | MR::ObjectDistanceMap::ObjectDistanceMap (ProtectedStruct, const ObjectDistanceMap &obj) |
| static constexpr const char * | MR::ObjectDistanceMap::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectDistanceMap::typeName () const override |
| static constexpr const char * | MR::ObjectDistanceMap::StaticClassName () noexcept |
| virtual std::string | MR::ObjectDistanceMap::className () const override |
| static constexpr const char * | MR::ObjectDistanceMap::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ObjectDistanceMap::classNameInPlural () const override |
| virtual void | MR::ObjectDistanceMap::applyScale (float scaleFactor) override |
| | scale object size (all point positions)
|
| virtual std::shared_ptr< Object > | MR::ObjectDistanceMap::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectDistanceMap::shallowClone () const override |
| virtual std::vector< std::string > | MR::ObjectDistanceMap::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| bool | MR::ObjectDistanceMap::setDistanceMap (const std::shared_ptr< DistanceMap > &dmap, const AffineXf3f &dmap2local, bool needUpdateMesh=true, ProgressCallback cb={}) |
| std::shared_ptr< Mesh > | MR::ObjectDistanceMap::calculateMesh (ProgressCallback cb={}) const |
| | creates a grid for this object
|
| void | MR::ObjectDistanceMap::updateMesh (const std::shared_ptr< Mesh > &mesh) |
| | updates the grid to the current one
|
| const std::shared_ptr< DistanceMap > & | MR::ObjectDistanceMap::getDistanceMap () const |
| virtual bool | MR::ObjectDistanceMap::hasModel () const override |
| const AffineXf3f & | MR::ObjectDistanceMap::getToWorldParameters () const |
| | unlike the name, actually it is the transformation from distance map in local space
|
| virtual size_t | MR::ObjectDistanceMap::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| void | MR::ObjectDistanceMap::resetFrontColor () override |
| | reset basic object colors to their default values from the current theme
|
| | MR::ObjectDistanceMap::ObjectDistanceMap (const ObjectDistanceMap &other)=default |
| virtual void | MR::ObjectDistanceMap::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectDistanceMap::serializeFields_ (Json::Value &root) const override |
| void | MR::ObjectDistanceMap::deserializeFields_ (const Json::Value &root) override |
| Expected< void > | MR::ObjectDistanceMap::deserializeModel_ (const std::filesystem::path &path, ProgressCallback progressCb={}) override |
| | Reads model from file.
|
| virtual Expected< std::future< Expected< void > > > | MR::ObjectDistanceMap::serializeModel_ (const std::filesystem::path &path) const override |
| MR_BIND_IGNORE | MR::ObjectFactoryBase::ObjectFactoryBase (std::string className, ObjectMakerFunc *creator) |
| | MR::ObjectFactoryBase::~ObjectFactoryBase () |
| | MR::ObjectFactory< T >::ObjectFactory (std::string className) |
| | MR::ObjectGcode::ObjectGcode () |
| | MR::ObjectGcode::ObjectGcode (ObjectGcode &&)=default |
| ObjectGcode & | MR::ObjectGcode::operator= (ObjectGcode &&)=default |
| static constexpr const char * | MR::ObjectGcode::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectGcode::typeName () const override |
| static constexpr const char * | MR::ObjectGcode::StaticClassName () noexcept |
| virtual std::string | MR::ObjectGcode::className () const override |
| static constexpr const char * | MR::ObjectGcode::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ObjectGcode::classNameInPlural () const override |
| virtual std::shared_ptr< Object > | MR::ObjectGcode::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectGcode::shallowClone () const override |
| virtual void | MR::ObjectGcode::setCNCMachineSettings (const CNCMachineSettings &cncSettings) |
| virtual const CNCMachineSettings & | MR::ObjectGcode::getCNCMachineSettings () const |
| virtual void | MR::ObjectGcode::setGcodeSource (const std::shared_ptr< GcodeSource > &gcodeSource) |
| virtual const std::shared_ptr< GcodeSource > & | MR::ObjectGcode::gcodeSource () const |
| virtual const std::vector< GcodeProcessor::MoveAction > & | MR::ObjectGcode::actionList () const |
| | get action list (produced from g-code source)
|
| virtual const std::vector< int > & | MR::ObjectGcode::segmentToSourceLineMap () const |
| | get mapping of tool path polyline segment id to source line number of g-code source
|
| virtual void | MR::ObjectGcode::setDirtyFlags (uint32_t mask, bool invalidateCaches=true) override |
| | reinterpret_cast to avoid making a copy of shared_ptr
|
| | MR::ObjectGcode::ObjectGcode (ProtectedStruct, const ObjectGcode &obj) |
| virtual std::vector< std::string > | MR::ObjectGcode::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| void | MR::ObjectGcode::switchFeedrateGradient (bool isFeedrateGradientEnabled) |
| | set drawing feedrate as gradient of brightness
|
| bool | MR::ObjectGcode::isFeedrateGradient () const |
| void | MR::ObjectGcode::setIdleColor (const Color &color) |
| const Color & | MR::ObjectGcode::getIdleColor () const |
| virtual bool | MR::ObjectGcode::select (bool isSelected) override |
| | selects the object, returns true if value changed, otherwise returns false
|
| virtual void | MR::ObjectGcode::setFrontColor (const Color &color, bool selected, ViewportId viewportId={}) override |
| | sets color of object when it is selected/not-selected (depending on argument) in given viewport
|
| virtual size_t | MR::ObjectGcode::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ObjectGcode::ObjectGcode (const ObjectGcode &other)=default |
| virtual void | MR::ObjectGcode::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectGcode::swapSignals_ (Object &other) override |
| virtual void | MR::ObjectGcode::serializeFields_ (Json::Value &root) const override |
| | serializeFields_: serializeBaseFields_ plus polyline serialization
|
| void | MR::ObjectGcode::deserializeFields_ (const Json::Value &root) override |
| | deserializeFields_: deserializeBaseFields_ plus polyline deserialization
|
| | MR::ObjectLines::ObjectLines ()=default |
| | MR::ObjectLines::ObjectLines (ObjectLines &&)=default |
| ObjectLines & | MR::ObjectLines::operator= (ObjectLines &&)=default |
| static constexpr const char * | MR::ObjectLines::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectLines::typeName () const override |
| static constexpr const char * | MR::ObjectLines::StaticClassName () noexcept |
| virtual std::string | MR::ObjectLines::className () const override |
| static constexpr const char * | MR::ObjectLines::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ObjectLines::classNameInPlural () const override |
| virtual std::shared_ptr< Object > | MR::ObjectLines::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectLines::shallowClone () const override |
| virtual void | MR::ObjectLines::setPolyline (const std::shared_ptr< Polyline3 > &polyline) |
| virtual std::shared_ptr< Polyline3 > | MR::ObjectLines::updatePolyline (std::shared_ptr< Polyline3 > polyline) |
| | sets given polyline to this, and returns back previous polyline of this;
|
| virtual const std::shared_ptr< Polyline3 > & | MR::ObjectLines::varPolyline () |
| | MR::ObjectLines::ObjectLines (ProtectedStruct, const ObjectLines &obj) |
| virtual std::vector< std::string > | MR::ObjectLines::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| | MR::ObjectLines::ObjectLines (const ObjectLines &other)=default |
| virtual void | MR::ObjectLines::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectLines::serializeFields_ (Json::Value &root) const override |
| | serializeFields_: serializeBaseFields_ plus polyline serialization
|
| std::shared_ptr< ObjectLines > | MR::merge (const std::vector< std::shared_ptr< ObjectLines > > &objsLines) |
| | constructs new ObjectLines containing the union of valid data from all input objects
|
| std::shared_ptr< ObjectLines > | MR::cloneRegion (const std::shared_ptr< ObjectLines > &objLines, const UndirectedEdgeBitSet ®ion) |
| | constructs new ObjectLines containing the region of data from input object
|
| | MR::ObjectLinesHolder::ObjectLinesHolder () |
| | MR::ObjectLinesHolder::ObjectLinesHolder (ObjectLinesHolder &&)=default |
| ObjectLinesHolder & | MR::ObjectLinesHolder::operator= (ObjectLinesHolder &&)=default |
| static constexpr const char * | MR::ObjectLinesHolder::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectLinesHolder::typeName () const override |
| virtual void | MR::ObjectLinesHolder::applyScale (float scaleFactor) override |
| | scale object size (all point positions)
|
| virtual bool | MR::ObjectLinesHolder::hasVisualRepresentation () const override |
| | does the object have any visual representation (visible points, triangles, edges, etc.), no considering child objects
|
| virtual bool | MR::ObjectLinesHolder::hasModel () const override |
| virtual std::shared_ptr< Object > | MR::ObjectLinesHolder::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectLinesHolder::shallowClone () const override |
| const std::shared_ptr< const Polyline3 > & | MR::ObjectLinesHolder::polyline () const |
| virtual void | MR::ObjectLinesHolder::setDirtyFlags (uint32_t mask, bool invalidateCaches=true) override |
| | reinterpret_cast to avoid making a copy of shared_ptr
|
| virtual void | MR::ObjectLinesHolder::setDashPattern (const DashPattern &pattern, ViewportId vpId={}) |
| virtual const DashPattern & | MR::ObjectLinesHolder::getDashPattern (ViewportId vpId={}, bool *isDef=nullptr) const |
| virtual void | MR::ObjectLinesHolder::setLineWidth (float width) |
| virtual float | MR::ObjectLinesHolder::getLineWidth () const |
| virtual void | MR::ObjectLinesHolder::setPointSize (float size) |
| virtual float | MR::ObjectLinesHolder::getPointSize () const |
| | MR::ObjectLinesHolder::ObjectLinesHolder (ProtectedStruct, const ObjectLinesHolder &obj) |
| const VertColors & | MR::ObjectLinesHolder::getVertsColorMap () const |
| | returns per-vertex colors of the object
|
| virtual void | MR::ObjectLinesHolder::setVertsColorMap (VertColors vertsColorMap) |
| | sets per-vertex colors of the object
|
| virtual void | MR::ObjectLinesHolder::updateVertsColorMap (VertColors &vertsColorMap) |
| | swaps per-vertex colors of the object with given argument
|
| const UndirectedEdgeColors & | MR::ObjectLinesHolder::getLinesColorMap () const |
| virtual void | MR::ObjectLinesHolder::setLinesColorMap (UndirectedEdgeColors linesColorMap) |
| virtual void | MR::ObjectLinesHolder::updateLinesColorMap (UndirectedEdgeColors &updated) |
| bool | MR::ObjectLinesHolder::supportsVisualizeProperty (AnyVisualizeMaskEnum type) const override |
| | Returns true if this class supports the property type. Otherwise passing it to the functions below is illegal.
|
| AllVisualizeProperties | MR::ObjectLinesHolder::getAllVisualizeProperties () const override |
| | get all visualize properties masks
|
| const ViewportMask & | MR::ObjectLinesHolder::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| | returns mask of viewports where given property is set
|
| virtual void | MR::ObjectLinesHolder::copyColors (const ObjectLinesHolder &src, const VertMap &thisToSrc) |
| | copies vertex colors from given source object
|
| virtual Box3f | MR::ObjectLinesHolder::getWorldBox (ViewportId={}) const override |
| virtual size_t | MR::ObjectLinesHolder::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| float | MR::ObjectLinesHolder::avgEdgeLen () const |
| | returns cached average edge length
|
| size_t | MR::ObjectLinesHolder::numUndirectedEdges () const |
| | returns cached information about the number of undirected edges in the polyline
|
| size_t | MR::ObjectLinesHolder::numComponents () const |
| | returns cached information about the number of components in the polyline
|
| float | MR::ObjectLinesHolder::totalLength () const |
| | return cached total length
|
| void | MR::ObjectLinesHolder::resetFrontColor () override |
| | reset basic object colors to their default values from the current theme
|
| | MR::ObjectLinesHolder::ObjectLinesHolder (const ObjectLinesHolder &other)=default |
| virtual void | MR::ObjectLinesHolder::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectLinesHolder::swapSignals_ (Object &other) override |
| void | MR::ObjectLinesHolder::serializeBaseFields_ (Json::Value &root) const |
| virtual void | MR::ObjectLinesHolder::serializeFields_ (Json::Value &root) const override |
| | serializeFields_: serializeBaseFields_ plus polyline serialization
|
| Expected< void > | MR::ObjectLinesHolder::deserializeModel_ (const std::filesystem::path &path, ProgressCallback progressCb={}) override |
| | Reads model from file.
|
| void | MR::ObjectLinesHolder::deserializeBaseFields_ (const Json::Value &root) |
| virtual void | MR::ObjectLinesHolder::deserializeFields_ (const Json::Value &root) override |
| | deserializeFields_: deserializeBaseFields_ plus polyline deserialization
|
| virtual Box3f | MR::ObjectLinesHolder::computeBoundingBox_ () const override |
| virtual void | MR::ObjectLinesHolder::setupRenderObject_ () const override |
| void | MR::ObjectLinesHolder::setAllVisualizeProperties_ (const AllVisualizeProperties &properties, std::size_t &pos) override |
| | set all visualize properties masks
|
| | MR::ObjectMesh::ObjectMesh ()=default |
| | MR::ObjectMesh::ObjectMesh (ObjectMesh &&) noexcept=default |
| ObjectMesh & | MR::ObjectMesh::operator= (ObjectMesh &&) noexcept=default |
| static constexpr const char * | MR::ObjectMesh::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectMesh::typeName () const override |
| static constexpr const char * | MR::ObjectMesh::StaticClassName () noexcept |
| virtual std::string | MR::ObjectMesh::className () const override |
| static constexpr const char * | MR::ObjectMesh::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ObjectMesh::classNameInPlural () const override |
| virtual const std::shared_ptr< Mesh > & | MR::ObjectMesh::varMesh () |
| | returns variable mesh, if const mesh is needed use mesh() instead
|
| virtual void | MR::ObjectMesh::setMesh (std::shared_ptr< Mesh > mesh) |
| | sets given mesh to this, resets selection and creases
|
| virtual std::shared_ptr< Mesh > | MR::ObjectMesh::updateMesh (std::shared_ptr< Mesh > mesh) |
| virtual std::vector< std::string > | MR::ObjectMesh::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| virtual std::shared_ptr< Object > | MR::ObjectMesh::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectMesh::shallowClone () const override |
| | MR::ObjectMesh::ObjectMesh (ProtectedStruct, const ObjectMesh &obj) |
| MeshIntersectionResult | MR::ObjectMesh::worldRayIntersection (const Line3f &worldRay, const FaceBitSet *region=nullptr) const |
| | MR::ObjectMesh::ObjectMesh (const ObjectMesh &other)=default |
| virtual void | MR::ObjectMesh::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectMesh::serializeFields_ (Json::Value &root) const override |
| std::shared_ptr< ObjectMesh > | MR::merge (const std::vector< std::shared_ptr< ObjectMesh > > &objsMesh, const ObjectMeshMergeOptions &options={}) |
| | constructs new ObjectMesh containing the union of valid data from all input objects
|
| std::shared_ptr< ObjectMesh > | MR::cloneRegion (const std::shared_ptr< ObjectMesh > &objMesh, const FaceBitSet ®ion, bool copyTexture=true) |
| ObjectMeshData | MR::ObjectMeshData::clone () const |
| | returns copy of this object with mesh cloned
|
| size_t | MR::ObjectMeshData::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| UndirectedEdgeBitSet | MR::edgesBetweenDifferentColors (const MeshTopology &topology, const FaceColors &colors) |
| | return all edges separating faces with different colors
|
| | MR::ObjectMeshHolder::ObjectMeshHolder () |
| | MR::ObjectMeshHolder::ObjectMeshHolder (ObjectMeshHolder &&) noexcept=default |
| ObjectMeshHolder & | MR::ObjectMeshHolder::operator= (ObjectMeshHolder &&) noexcept=default |
| static constexpr const char * | MR::ObjectMeshHolder::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectMeshHolder::typeName () const override |
| virtual void | MR::ObjectMeshHolder::applyScale (float scaleFactor) override |
| | scale object size (all point positions)
|
| virtual bool | MR::ObjectMeshHolder::hasVisualRepresentation () const override |
| | mesh object can be seen if the mesh has at least one edge
|
| virtual bool | MR::ObjectMeshHolder::hasModel () const override |
| const std::shared_ptr< const Mesh > & | MR::ObjectMeshHolder::mesh () const |
| MeshPart | MR::ObjectMeshHolder::meshPart () const |
| | reinterpret_cast to avoid making a copy of shared_ptr
|
| virtual std::shared_ptr< Object > | MR::ObjectMeshHolder::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectMeshHolder::shallowClone () const override |
| virtual void | MR::ObjectMeshHolder::setDirtyFlags (uint32_t mask, bool invalidateCaches=true) override |
| virtual void | MR::ObjectMeshHolder::setDirtyFlagsFast (uint32_t mask) |
| virtual void | MR::ObjectMeshHolder::invalidateMetricsCache (uint32_t mask) |
| | invalidates same caches with mesh metrics (area, volume, ...) as by setDirtyFlags( mask )
|
| const FaceBitSet & | MR::ObjectMeshHolder::getSelectedFaces () const |
| virtual void | MR::ObjectMeshHolder::selectFaces (FaceBitSet newSelection) |
| const Color & | MR::ObjectMeshHolder::getSelectedFacesColor (ViewportId id={}) const |
| | returns colors of selected triangles
|
| virtual void | MR::ObjectMeshHolder::setSelectedFacesColor (const Color &color, ViewportId id={}) |
| | sets colors of selected triangles
|
| const UndirectedEdgeBitSet & | MR::ObjectMeshHolder::getSelectedEdges () const |
| virtual void | MR::ObjectMeshHolder::selectEdges (UndirectedEdgeBitSet newSelection) |
| const Color & | MR::ObjectMeshHolder::getSelectedEdgesColor (ViewportId id={}) const |
| | returns colors of selected edges
|
| virtual void | MR::ObjectMeshHolder::setSelectedEdgesColor (const Color &color, ViewportId id={}) |
| | sets colors of selected edges
|
| const ViewportProperty< Color > & | MR::ObjectMeshHolder::getSelectedEdgesColorsForAllViewports () const |
| virtual void | MR::ObjectMeshHolder::setSelectedEdgesColorsForAllViewports (ViewportProperty< Color > val) |
| const ViewportProperty< Color > & | MR::ObjectMeshHolder::getSelectedFacesColorsForAllViewports () const |
| virtual void | MR::ObjectMeshHolder::setSelectedFacesColorsForAllViewports (ViewportProperty< Color > val) |
| const ViewportProperty< Color > & | MR::ObjectMeshHolder::getEdgesColorsForAllViewports () const |
| virtual void | MR::ObjectMeshHolder::setEdgesColorsForAllViewports (ViewportProperty< Color > val) |
| const ViewportProperty< Color > & | MR::ObjectMeshHolder::getPointsColorsForAllViewports () const |
| virtual void | MR::ObjectMeshHolder::setPointsColorsForAllViewports (ViewportProperty< Color > val) |
| const ViewportProperty< Color > & | MR::ObjectMeshHolder::getBordersColorsForAllViewports () const |
| virtual void | MR::ObjectMeshHolder::setBordersColorsForAllViewports (ViewportProperty< Color > val) |
| void | MR::ObjectMeshHolder::copyAllSolidColors (const ObjectMeshHolder &other) |
| | set all object solid colors (front/back/etc.) from other object for all viewports
|
| const UndirectedEdgeBitSet & | MR::ObjectMeshHolder::creases () const |
| | Edges on mesh, that will have sharp visualization even with smooth shading.
|
| virtual void | MR::ObjectMeshHolder::setCreases (UndirectedEdgeBitSet creases) |
| void | MR::ObjectMeshHolder::setFlatShading (bool on) |
| | sets flat (true) or smooth (false) shading
|
| bool | MR::ObjectMeshHolder::flatShading () const |
| bool | MR::ObjectMeshHolder::supportsVisualizeProperty (AnyVisualizeMaskEnum type) const override |
| | Returns true if this class supports the property type. Otherwise passing it to the functions below is illegal.
|
| AllVisualizeProperties | MR::ObjectMeshHolder::getAllVisualizeProperties () const override |
| | get all visualize properties masks
|
| const ViewportMask & | MR::ObjectMeshHolder::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| | returns mask of viewports where given property is set
|
| const ObjectMeshData & | MR::ObjectMeshHolder::data () const |
| | provides read-only access to whole ObjectMeshData
|
| virtual void | MR::ObjectMeshHolder::setData (ObjectMeshData &&data) |
| | sets whole new ObjectMeshData
|
| virtual void | MR::ObjectMeshHolder::updateData (ObjectMeshData &data) |
| | swaps whole ObjectMeshData with given argument
|
| const VertColors & | MR::ObjectMeshHolder::getVertsColorMap () const |
| | returns per-vertex colors of the object
|
| virtual void | MR::ObjectMeshHolder::setVertsColorMap (VertColors vertsColorMap) |
| | sets per-vertex colors of the object
|
| virtual void | MR::ObjectMeshHolder::updateVertsColorMap (VertColors &vertsColorMap) |
| | swaps per-vertex colors of the object with given argument
|
| const FaceColors & | MR::ObjectMeshHolder::getFacesColorMap () const |
| virtual void | MR::ObjectMeshHolder::setFacesColorMap (FaceColors facesColorMap) |
| virtual void | MR::ObjectMeshHolder::updateFacesColorMap (FaceColors &updated) |
| virtual void | MR::ObjectMeshHolder::setEdgeWidth (float edgeWidth) |
| float | MR::ObjectMeshHolder::getEdgeWidth () const |
| virtual void | MR::ObjectMeshHolder::setPointSize (float size) |
| virtual float | MR::ObjectMeshHolder::getPointSize () const |
| const Color & | MR::ObjectMeshHolder::getEdgesColor (ViewportId id={}) const |
| virtual void | MR::ObjectMeshHolder::setEdgesColor (const Color &color, ViewportId id={}) |
| const Color & | MR::ObjectMeshHolder::getPointsColor (ViewportId id={}) const |
| virtual void | MR::ObjectMeshHolder::setPointsColor (const Color &color, ViewportId id={}) |
| const Color & | MR::ObjectMeshHolder::getBordersColor (ViewportId id={}) const |
| virtual void | MR::ObjectMeshHolder::setBordersColor (const Color &color, ViewportId id={}) |
| | MR::ObjectMeshHolder::ObjectMeshHolder (ProtectedStruct, const ObjectMeshHolder &obj) |
| const MeshTexture & | MR::ObjectMeshHolder::getTexture () const |
| | returns first texture in the vector. If there is no textures, returns empty texture
|
| virtual MR_BIND_IGNORE void | MR::ObjectMeshHolder::setTexture (MeshTexture texture) |
| | for backward compatibility
|
| virtual MR_BIND_IGNORE void | MR::ObjectMeshHolder::updateTexture (MeshTexture &updated) |
| const Vector< MeshTexture, TextureId > & | MR::ObjectMeshHolder::getTextures () const |
| virtual void | MR::ObjectMeshHolder::setTextures (Vector< MeshTexture, TextureId > texture) |
| virtual void | MR::ObjectMeshHolder::updateTextures (Vector< MeshTexture, TextureId > &updated) |
| virtual void | MR::ObjectMeshHolder::setTexturePerFace (Vector< TextureId, FaceId > texturePerFace) |
| virtual void | MR::ObjectMeshHolder::updateTexturePerFace (Vector< TextureId, FaceId > &texturePerFace) |
| virtual void | MR::ObjectMeshHolder::addTexture (MeshTexture texture) |
| const TexturePerFace & | MR::ObjectMeshHolder::getTexturePerFace () const |
| const VertUVCoords & | MR::ObjectMeshHolder::getUVCoords () const |
| virtual void | MR::ObjectMeshHolder::setUVCoords (VertUVCoords uvCoordinates) |
| virtual void | MR::ObjectMeshHolder::updateUVCoords (VertUVCoords &updated) |
| virtual void | MR::ObjectMeshHolder::copyTextureAndColors (const ObjectMeshHolder &src, const VertMap &thisToSrc, const FaceMap &thisToSrcFaces={}) |
| | copies texture, UV-coordinates and vertex colors from given source object
|
| virtual void | MR::ObjectMeshHolder::copyColors (const ObjectMeshHolder &src, const VertMap &thisToSrc, const FaceMap &thisToSrcFaces={}) |
| | copies vertex colors from given source object
|
| const MeshTexture & | MR::ObjectMeshHolder::getAncillaryTexture () const |
| | ancillary texture can be used to have custom features visualization without affecting real one
|
| virtual void | MR::ObjectMeshHolder::setAncillaryTexture (MeshTexture texture) |
| const VertUVCoords & | MR::ObjectMeshHolder::getAncillaryUVCoords () const |
| virtual void | MR::ObjectMeshHolder::setAncillaryUVCoords (VertUVCoords uvCoordinates) |
| void | MR::ObjectMeshHolder::updateAncillaryUVCoords (VertUVCoords &updated) |
| bool | MR::ObjectMeshHolder::hasAncillaryTexture () const |
| void | MR::ObjectMeshHolder::clearAncillaryTexture () |
| virtual bool | MR::ObjectMeshHolder::getRedrawFlag (ViewportMask viewportMask) const override |
| | returns true if the object must be redrawn (due to dirty flags) in one of specified viewports
|
| bool | MR::ObjectMeshHolder::isMeshClosed () const |
| | returns cached information whether the mesh is closed
|
| virtual Box3f | MR::ObjectMeshHolder::getWorldBox (ViewportId={}) const override |
| size_t | MR::ObjectMeshHolder::numSelectedFaces () const |
| | returns cached information about the number of selected faces in the mesh
|
| size_t | MR::ObjectMeshHolder::numSelectedEdges () const |
| | returns cached information about the number of selected undirected edges in the mesh
|
| size_t | MR::ObjectMeshHolder::numCreaseEdges () const |
| | returns cached information about the number of crease undirected edges in the mesh
|
| double | MR::ObjectMeshHolder::totalArea () const |
| | returns cached summed area of mesh triangles
|
| double | MR::ObjectMeshHolder::selectedArea () const |
| | returns cached area of selected triangles
|
| double | MR::ObjectMeshHolder::volume () const |
| | returns cached volume of space surrounded by the mesh, which is valid only if mesh is closed
|
| float | MR::ObjectMeshHolder::avgEdgeLen () const |
| | returns cached average edge length
|
| size_t | MR::ObjectMeshHolder::numUndirectedEdges () const |
| | returns cached information about the number of undirected edges in the mesh
|
| size_t | MR::ObjectMeshHolder::numHoles () const |
| | returns cached information about the number of holes in the mesh
|
| size_t | MR::ObjectMeshHolder::numComponents () const |
| | returns cached information about the number of components in the mesh
|
| size_t | MR::ObjectMeshHolder::numHandles () const |
| | returns cached information about the number of handles in the mesh
|
| virtual size_t | MR::ObjectMeshHolder::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| const char * | MR::ObjectMeshHolder::serializeFormat () const |
| | returns overriden file extension used to serialize mesh inside this object, nullptr means defaultSerializeMeshFormat()
|
| const char * | MR::ObjectMeshHolder::actualSerializeFormat () const |
| | returns overriden file extension used to serialize mesh inside this object if set, or defaultSerializeMeshFormat().c_str() otherwise; never returns nullptr
|
| void | MR::ObjectMeshHolder::setSerializeFormat (const char *newFormat) |
| void | MR::ObjectMeshHolder::resetFrontColor () override |
| | reset basic object colors to their default values from the current theme
|
| void | MR::ObjectMeshHolder::resetColors () override |
| | reset all object colors to their default values from the current theme
|
| virtual size_t | MR::ObjectMeshHolder::getModelHash () const override |
| | return hash of model (or hash object pointer if object has no model)
|
| virtual bool | MR::ObjectMeshHolder::sameModels (const Object &other) const override |
| | return true if model of current object equals to model (the same) of other
|
| | MR::ObjectMeshHolder::ObjectMeshHolder (const ObjectMeshHolder &other)=default |
| virtual void | MR::ObjectMeshHolder::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectMeshHolder::swapSignals_ (Object &other) override |
| virtual Expected< std::future< Expected< void > > > | MR::ObjectMeshHolder::serializeModel_ (const std::filesystem::path &path) const override |
| virtual void | MR::ObjectMeshHolder::serializeFields_ (Json::Value &root) const override |
| void | MR::ObjectMeshHolder::deserializeFields_ (const Json::Value &root) override |
| Expected< void > | MR::ObjectMeshHolder::deserializeModel_ (const std::filesystem::path &path, ProgressCallback progressCb={}) override |
| | Reads model from file.
|
| virtual Expected< void > | MR::ObjectMeshHolder::setSharedModel_ (const Object &other) override |
| | shares model from other object
|
| void | MR::ObjectMeshHolder::setAllVisualizeProperties_ (const AllVisualizeProperties &properties, std::size_t &pos) override |
| | set all visualize properties masks
|
| virtual Box3f | MR::ObjectMeshHolder::computeBoundingBox_ () const override |
| virtual void | MR::ObjectMeshHolder::setupRenderObject_ () const override |
| const std::string & | MR::defaultSerializeMeshFormat () |
| void | MR::setDefaultSerializeMeshFormat (std::string newFormat) |
| | MR::ObjectPoints::ObjectPoints ()=default |
| | MR::ObjectPoints::ObjectPoints (const ObjectMesh &objMesh, bool saveNormals=true) |
| ObjectPoints & | MR::ObjectPoints::operator= (ObjectPoints &&)=default |
| | MR::ObjectPoints::ObjectPoints (ObjectPoints &&)=default |
| static constexpr const char * | MR::ObjectPoints::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectPoints::typeName () const override |
| static constexpr const char * | MR::ObjectPoints::StaticClassName () noexcept |
| virtual std::string | MR::ObjectPoints::className () const override |
| static constexpr const char * | MR::ObjectPoints::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ObjectPoints::classNameInPlural () const override |
| virtual const std::shared_ptr< PointCloud > & | MR::ObjectPoints::varPointCloud () |
| | returns variable point cloud, if const point cloud is needed use pointCloud() instead
|
| virtual std::shared_ptr< Object > | MR::ObjectPoints::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectPoints::shallowClone () const override |
| virtual void | MR::ObjectPoints::setPointCloud (const std::shared_ptr< PointCloud > &pointCloud) |
| virtual void | MR::ObjectPoints::swapPointCloud (std::shared_ptr< PointCloud > &points) |
| | MR::ObjectPoints::ObjectPoints (ProtectedStruct, const ObjectPoints &obj) |
| virtual std::vector< std::string > | MR::ObjectPoints::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| | MR::ObjectPoints::ObjectPoints (const ObjectPoints &other)=default |
| virtual void | MR::ObjectPoints::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectPoints::serializeFields_ (Json::Value &root) const override |
| std::shared_ptr< ObjectPoints > | MR::merge (const std::vector< std::shared_ptr< ObjectPoints > > &objsPoints) |
| | constructs new ObjectPoints containing the union of valid points from all input objects
|
| std::shared_ptr< ObjectPoints > | MR::cloneRegion (const std::shared_ptr< ObjectPoints > &objPoints, const VertBitSet ®ion) |
| std::shared_ptr< ObjectPoints > | MR::pack (const ObjectPoints &pts, Reorder reorder, VertBitSet *newValidVerts=nullptr, const ProgressCallback &cb={}) |
| | MR::ObjectPointsHolder::ObjectPointsHolder () |
| | MR::ObjectPointsHolder::ObjectPointsHolder (ObjectPointsHolder &&) noexcept=default |
| ObjectPointsHolder & | MR::ObjectPointsHolder::operator= (ObjectPointsHolder &&) noexcept=default |
| static constexpr const char * | MR::ObjectPointsHolder::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectPointsHolder::typeName () const override |
| virtual void | MR::ObjectPointsHolder::applyScale (float scaleFactor) override |
| | scale object size (all point positions)
|
| virtual bool | MR::ObjectPointsHolder::hasVisualRepresentation () const override |
| | does the object have any visual representation (visible points, triangles, edges, etc.), no considering child objects
|
| virtual bool | MR::ObjectPointsHolder::hasModel () const override |
| const std::shared_ptr< const PointCloud > & | MR::ObjectPointsHolder::pointCloud () const |
| PointCloudPart | MR::ObjectPointsHolder::pointCloudPart () const |
| | reinterpret_cast to avoid making a copy of shared_ptr
|
| virtual std::shared_ptr< Object > | MR::ObjectPointsHolder::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectPointsHolder::shallowClone () const override |
| virtual void | MR::ObjectPointsHolder::setDirtyFlags (uint32_t mask, bool invalidateCaches=true) override |
| const VertBitSet & | MR::ObjectPointsHolder::getSelectedPoints () const |
| | gets current selected points
|
| void | MR::ObjectPointsHolder::selectPoints (VertBitSet newSelection) |
| | sets current selected points
|
| virtual void | MR::ObjectPointsHolder::updateSelectedPoints (VertBitSet &selection) |
| | swaps current selected points with the argument
|
| const VertBitSet & | MR::ObjectPointsHolder::getSelectedPointsOrAll () const |
| | returns selected points if any, otherwise returns all valid points
|
| const Color & | MR::ObjectPointsHolder::getSelectedVerticesColor (ViewportId id={}) const |
| | returns colors of selected vertices
|
| virtual void | MR::ObjectPointsHolder::setSelectedVerticesColor (const Color &color, ViewportId id={}) |
| | sets colors of selected vertices
|
| const ViewportProperty< Color > & | MR::ObjectPointsHolder::getSelectedVerticesColorsForAllViewports () const |
| virtual void | MR::ObjectPointsHolder::setSelectedVerticesColorsForAllViewports (ViewportProperty< Color > val) |
| void | MR::ObjectPointsHolder::copyAllSolidColors (const ObjectPointsHolder &other) |
| | set all object solid colors (front/back/etc.) from other object for all viewports
|
| bool | MR::ObjectPointsHolder::supportsVisualizeProperty (AnyVisualizeMaskEnum type) const override |
| | Returns true if this class supports the property type. Otherwise passing it to the functions below is illegal.
|
| const VertColors & | MR::ObjectPointsHolder::getVertsColorMap () const |
| | returns per-point colors of the object
|
| virtual void | MR::ObjectPointsHolder::setVertsColorMap (VertColors vertsColorMap) |
| | sets per-point colors of the object
|
| virtual void | MR::ObjectPointsHolder::updateVertsColorMap (VertColors &vertsColorMap) |
| | swaps per-point colors of the object with given argument
|
| virtual void | MR::ObjectPointsHolder::copyColors (const ObjectPointsHolder &src, const VertMap &thisToSrc, const FaceMap &thisToSrcFaces={}) |
| | copies point colors from given source object
|
| AllVisualizeProperties | MR::ObjectPointsHolder::getAllVisualizeProperties () const override |
| | get all visualize properties masks
|
| const ViewportMask & | MR::ObjectPointsHolder::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| | returns mask of viewports where given property is set
|
| virtual void | MR::ObjectPointsHolder::setPointSize (float size) |
| | sets size of points on screen in pixels
|
| virtual float | MR::ObjectPointsHolder::getPointSize () const |
| | returns size of points on screen in pixels
|
| | MR::ObjectPointsHolder::ObjectPointsHolder (ProtectedStruct, const ObjectPointsHolder &obj) |
| virtual Box3f | MR::ObjectPointsHolder::getWorldBox (ViewportId={}) const override |
| size_t | MR::ObjectPointsHolder::numValidPoints () const |
| | returns cached information about the number of valid points
|
| size_t | MR::ObjectPointsHolder::numSelectedPoints () const |
| | returns cached information about the number of selected points
|
| virtual size_t | MR::ObjectPointsHolder::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| int | MR::ObjectPointsHolder::getRenderDiscretization () const |
| size_t | MR::ObjectPointsHolder::numRenderingValidPoints () const |
| | returns count of valid points that will be rendered
|
| int | MR::ObjectPointsHolder::getMaxRenderingPoints () const |
| void | MR::ObjectPointsHolder::setMaxRenderingPoints (int val) |
| const char * | MR::ObjectPointsHolder::serializeFormat () const |
| | returns overriden file extension used to serialize point cloud inside this object, nullptr means defaultSerializePointsFormat()
|
| MR_BIND_IGNORE const char * | MR::ObjectPointsHolder::savePointsFormat () const |
| void | MR::ObjectPointsHolder::setSerializeFormat (const char *newFormat) |
| MR_BIND_IGNORE void | MR::ObjectPointsHolder::setSavePointsFormat (const char *newFormat) |
| void | MR::ObjectPointsHolder::resetFrontColor () override |
| | reset basic object colors to their default values from the current theme
|
| void | MR::ObjectPointsHolder::resetColors () override |
| | reset all object colors to their default values from the current theme
|
| virtual void | MR::ObjectPointsHolder::swapSignals_ (Object &other) override |
| | MR::ObjectPointsHolder::ObjectPointsHolder (const ObjectPointsHolder &other)=default |
| virtual void | MR::ObjectPointsHolder::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual Box3f | MR::ObjectPointsHolder::computeBoundingBox_ () const override |
| virtual Expected< std::future< Expected< void > > > | MR::ObjectPointsHolder::serializeModel_ (const std::filesystem::path &path) const override |
| virtual Expected< void > | MR::ObjectPointsHolder::deserializeModel_ (const std::filesystem::path &path, ProgressCallback progressCb={}) override |
| | Reads model from file.
|
| virtual void | MR::ObjectPointsHolder::serializeFields_ (Json::Value &root) const override |
| virtual void | MR::ObjectPointsHolder::deserializeFields_ (const Json::Value &root) override |
| virtual void | MR::ObjectPointsHolder::setupRenderObject_ () const override |
| void | MR::ObjectPointsHolder::setAllVisualizeProperties_ (const AllVisualizeProperties &properties, std::size_t &pos) override |
| | set all visualize properties masks
|
| const std::string & | MR::defaultSerializePointsFormat () |
| void | MR::setDefaultSerializePointsFormat (std::string newFormat) |
| bool | MR::objectHasSelectableChildren (const MR::Object &object, bool recurse=false) |
| Expected< void > | MR::ObjectSave::toAnySupportedSceneFormat (const Object &object, const std::filesystem::path &file, const Settings &settings={}) |
| Expected< void > | MR::ObjectSave::toAnySupportedFormat (const Object &object, const std::filesystem::path &file, const Settings &settings={}) |
| Expected< void > | MR::serializeObjectTree (const Object &object, const std::filesystem::path &path, FolderCallback preCompress, const SceneSave::Settings &settings={}) |
| | saves object subtree in given scene file (zip/mru)
|
| Expected< void > | MR::serializeObjectTree (const Object &object, const std::filesystem::path &path, const SceneSave::Settings &settings={}) |
| static ObjectTagEventDispatcher & | MR::ObjectTagEventDispatcher::instance () |
| | returns singleton instance
|
| bool | MR::OffsetContourIndex::valid () const |
| bool | MR::OffsetContoursOrigins::valid () const |
| bool | MR::OffsetContoursOrigins::isIntersection () const |
| Contours2f | MR::offsetContours (const Contours2f &contours, float offset, const OffsetContoursParams ¶ms={}) |
| | offsets 2d contours in plane
|
| Contours2f | MR::offsetContours (const Contours2f &contours, ContoursVariableOffset offset, const OffsetContoursParams ¶ms={}) |
| | offsets 2d contours in plane
|
| Contours3f | MR::offsetContours (const Contours3f &contours, float offset, const OffsetContoursParams ¶ms={}, const OffsetContoursRestoreZParams &zParmas={}) |
| | offsets 3d contours in XY plane
|
| Contours3f | MR::offsetContours (const Contours3f &contours, ContoursVariableOffset offset, const OffsetContoursParams ¶ms={}, const OffsetContoursRestoreZParams &zParmas={}) |
| | offsets 3d contours in XY plane
|
| bool | MR::offsetVerts (Mesh &mesh, const VertMetric &offset, const ProgressCallback &cb={}) |
| Mesh | MR::makeThickMesh (const Mesh &m, const ThickenParams ¶ms) |
| bool | MR::zCompensate (Mesh &mesh, const ZCompensateParams ¶ms) |
| std::optional< VertScalars > | MR::findZcompensationShifts (const Mesh &mesh, const ZCompensateParams ¶ms) |
| | finds the shift along z-axis for each vertex without modifying the mesh
|
| std::optional< VertCoords > | MR::findZcompensatedPositions (const Mesh &mesh, const ZCompensateParams ¶ms) |
| | finds vertices positions of the mesh after z-compensation without modifying the mesh
|
| void | MR::subdivideLoneContours (Mesh &mesh, const OneMeshContours &contours, FaceHashMap *new2oldMap=nullptr) |
| void | MR::getOneMeshIntersectionContours (const Mesh &meshA, const Mesh &meshB, const ContinuousContours &contours, OneMeshContours *outA, OneMeshContours *outB, const CoordinateConverters &converters, const AffineXf3f *rigidB2A=nullptr, Contours3f *outPtsA=nullptr, bool addSelfyTerminalVerts=false) |
| | if true, then open self-intersection contours will be prolonged to terminal vertices
|
| OneMeshContours | MR::getOneMeshSelfIntersectionContours (const Mesh &mesh, const ContinuousContours &contours, const CoordinateConverters &converters, const AffineXf3f *rigidB2A=nullptr) |
| Contours3f | MR::extractMeshContours (const OneMeshContours &meshContours) |
| | Converts OneMeshContours contours representation to Contours3f: set of coordinates.
|
| FaceBMap | MR::getOptimalFaceOrdering (const Mesh &mesh) |
| VertBMap | MR::getVertexOrdering (const FaceBMap &faceMap, const MeshTopology &topology) |
| UndirectedEdgeBMap | MR::getEdgeOrdering (const FaceBMap &faceMap, const MeshTopology &topology) |
| | MR::OutliersDetector::OutliersDetector ()=default |
| Expected< void > | MR::OutliersDetector::prepare (const PointCloud &pc, float radius, OutlierTypeMask mask, ProgressCallback progress={}) |
| void | MR::OutliersDetector::setParams (const OutlierParams ¶ms) |
| | calculate caches
|
| const OutlierParams & | MR::OutliersDetector::getParams () const |
| | Get search parameters.
|
| Expected< VertBitSet > | MR::OutliersDetector::find (OutlierTypeMask mask, ProgressCallback progress={}) |
| const std::vector< uint8_t > & | MR::OutliersDetector::getWeaklyConnectedStat () |
| | unite and calculate actual outliers
|
| Expected< VertBitSet > | MR::findOutliers (const PointCloud &pc, const FindOutliersParams ¶ms) |
| | Finding outlier points.
|
| Expected< FaceBitSet > | MR::findOverlappingTris (const MeshPart &mp, const FindOverlappingSettings &settings) |
| | finds all triangles that have oppositely oriented close triangle in the mesh
|
| constexpr | MR::Parabola< T >::Parabola () noexcept=default |
| constexpr | MR::Parabola< T >::Parabola (T a, T b, T c) |
| template<typename U> |
| constexpr | MR::Parabola< T >::Parabola (const Parabola< U > &p) |
| constexpr T | MR::Parabola< T >::operator() (T x) const |
| | compute value of quadratic function at any x
|
| constexpr T | MR::Parabola< T >::extremArg () const |
| | argument (x) where parabola reaches extremal value: minimum for a > 0, maximum for a < 0
|
| constexpr T | MR::Parabola< T >::extremVal () const |
| | value (y) where parabola reaches extremal value: minimum for a > 0, maximum for a < 0
|
| auto | MR::Parallel::CallSimply::operator() (auto &&f, auto id) const |
| auto | MR::Parallel::CallSimply::operator() (auto &&f, auto id, auto &&subrange) const |
| auto | MR::Parallel::CallSimplyMaker::operator() () const |
| auto | MR::Parallel::CallWithTLS< T >::operator() (auto &&f, auto id) const |
| auto | MR::Parallel::CallWithTLS< T >::operator() (auto &&f, auto id, auto &&subrange) const |
| auto | MR::Parallel::CallWithTLSMaker< L >::operator() () const |
| template<typename T> |
| MinMaxArg< T, size_t > | MR::parallelMinMaxArg (const T *data, size_t size, const BitSet *region=nullptr, const T *topExcluding=nullptr) |
| template<typename T, typename Itag> |
| MinMaxArg< T, Id< Itag > > | MR::parallelMinMaxArg (const Vector< T, Id< Itag > > &vec, const TaggedBitSet< Itag > *region=nullptr, const T *topExcluding=nullptr) |
| template<typename T> |
| std::pair< T, T > | MR::parallelMinMax (const T *data, size_t size, const BitSet *region=nullptr, const T *topExcluding=nullptr) |
| template<typename T> |
| std::pair< T, T > | MR::parallelMinMax (const std::vector< T > &vec, const BitSet *region=nullptr, const T *topExcluding=nullptr) |
| template<typename T, typename Itag> |
| std::pair< T, T > | MR::parallelMinMax (const Vector< T, Id< Itag > > &vec, const TaggedBitSet< Itag > *region=nullptr, const T *topExcluding=nullptr) |
| | MR::ParallelProgressReporter::ParallelProgressReporter (const ProgressCallback &cb) |
| bool | MR::ParallelProgressReporter::PerTaskReporter::operator() (float p) const |
| PerTaskReporter | MR::ParallelProgressReporter::newTask (float weight=1.f) |
| bool | MR::ParallelProgressReporter::operator() () |
| void | MR::PartMapping::clear () |
| | clears all member maps
|
| | MR::Src2TgtMaps::Src2TgtMaps (FaceMap *outFmap, VertMap *outVmap, WholeEdgeMap *outEmap) |
| | MR::Src2TgtMaps::~Src2TgtMaps () |
| | MR::Src2TgtMaps::operator const PartMapping & () const |
| | maps are moved back to user here
|
| const PartMapping & | MR::Src2TgtMaps::getPartMapping () const |
| | MR::Tgt2SrcMaps::Tgt2SrcMaps (FaceMap *outFmap, VertMap *outVmap, WholeEdgeMap *outEmap) |
| | MR::Tgt2SrcMaps::~Tgt2SrcMaps () |
| | MR::Tgt2SrcMaps::operator const PartMapping & () const |
| | maps are moved back to user here
|
| const PartMapping & | MR::Tgt2SrcMaps::getPartMapping () const |
| constexpr | MR::Plane3< T >::Plane3 () noexcept=default |
| constexpr | MR::Plane3< T >::Plane3 (const Vector3< T > &n, T d) noexcept |
| template<typename U> |
| | MR::Plane3< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit Plane3(const Plane3< U > &p) noexcept |
| static constexpr Plane3 | MR::Plane3< T >::fromDirAndPt (const Vector3< T > &n, const Vector3< T > &p) |
| T | MR::Plane3< T >::distance (const Vector3< T > &x) const |
| | returns distance from given point to this plane (if n is a unit vector)
|
| Plane3 | MR::Plane3< T >::operator- () const |
| | returns same plane represented with flipped direction of n-vector
|
| const Plane3 & | MR::Plane3< T >::operator+ () const |
| | returns same representation
|
| Plane3 | MR::Plane3< T >::normalized () const |
| | returns same plane represented with unit n-vector
|
| Vector3< T > | MR::Plane3< T >::project (const Vector3< T > &p) const |
| | finds the closest point on plane
|
| | MR::PlaneObject::PlaneObject () |
| | Creates simple plane object.
|
| | MR::PlaneObject::PlaneObject (const std::vector< Vector3f > &pointsToApprox) |
| | Finds best plane to approx given points.
|
| | MR::PlaneObject::PlaneObject (PlaneObject &&) noexcept=default |
| PlaneObject & | MR::PlaneObject::operator= (PlaneObject &&) noexcept=default |
| static constexpr const char * | MR::PlaneObject::StaticTypeName () noexcept |
| virtual const char * | MR::PlaneObject::typeName () const override |
| static constexpr const char * | MR::PlaneObject::StaticClassName () noexcept |
| virtual std::string | MR::PlaneObject::className () const override |
| static constexpr const char * | MR::PlaneObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::PlaneObject::classNameInPlural () const override |
| | MR::PlaneObject::PlaneObject (ProtectedStruct, const PlaneObject &obj) |
| virtual std::shared_ptr< Object > | MR::PlaneObject::clone () const override |
| virtual std::shared_ptr< Object > | MR::PlaneObject::shallowClone () const override |
| Vector3f | MR::PlaneObject::getNormal (ViewportId id={}) const |
| | calculates normal from xf
|
| Vector3f | MR::PlaneObject::getCenter (ViewportId id={}) const |
| | calculates center from xf
|
| void | MR::PlaneObject::setNormal (const Vector3f &normal, ViewportId id={}) |
| | updates xf to fit given normal
|
| void | MR::PlaneObject::setCenter (const Vector3f ¢er, ViewportId id={}) |
| | updates xf to fit given center
|
| void | MR::PlaneObject::setSize (float size, ViewportId id={}) |
| | updates xf to scale size
|
| float | MR::PlaneObject::getSize (ViewportId id={}) const |
| | calculates plane size from xf
|
| float | MR::PlaneObject::getSizeX (ViewportId id={}) const |
| float | MR::PlaneObject::getSizeY (ViewportId id={}) const |
| Matrix3f | MR::PlaneObject::calcLocalBasis (ViewportId id={}) const |
| | calculates normalized directions of X,Y axis of the plane and normal as Z
|
| void | MR::PlaneObject::setSizeX (float size, ViewportId id={}) |
| void | MR::PlaneObject::setSizeY (float size, ViewportId id={}) |
| virtual Vector3f | MR::PlaneObject::getBasePoint (ViewportId id={}) const override |
| | Returns point considered as base for the feature.
|
| FeatureObjectProjectPointResult | MR::PlaneObject::projectPoint (const Vector3f &point, ViewportId id={}) const override |
| virtual const std::vector< FeatureObjectSharedProperty > & | MR::PlaneObject::getAllSharedProperties () const override |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| | MR::PlaneObject::PlaneObject (const PlaneObject &other)=default |
| virtual void | MR::PlaneObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::PlaneObject::serializeFields_ (Json::Value &root) const override |
| virtual Expected< std::future< Expected< void > > > | MR::PlaneObject::serializeModel_ (const std::filesystem::path &) const override |
| virtual Expected< void > | MR::PlaneObject::deserializeModel_ (const std::filesystem::path &, ProgressCallback) override |
| | Reads model from file.
|
| void | MR::PlaneObject::setupRenderObject_ () const override |
| Expected< VertCoords > | MR::loadPly (std::istream &in, const PlyLoadParams ¶ms) |
| float | MR::findMaxDistanceSqOneWay (const PointCloud &a, const PointCloud &b, const AffineXf3f *rigidB2A=nullptr, float maxDistanceSq=FLT_MAX) |
| | returns the maximum of the squared distances from each B-point to A-cloud
|
| float | MR::findMaxDistanceSq (const PointCloud &a, const PointCloud &b, const AffineXf3f *rigidB2A=nullptr, float maxDistanceSq=FLT_MAX) |
| | returns the squared Hausdorff distance between two point clouds, that is the maximum of squared distances from each point to the other cloud (in both directions)
|
| VertBitSet | MR::findHalfSpacePoints (const PointCloud &pc, const Plane3f &plane) |
| PointCloud | MR::divideWithPlane (const PointCloud &points, const Plane3f &plane, const DividePointCloudOptionalOutput &optOut={}) |
| | MR::PointCloudPart::PointCloudPart (const PointCloud &c, const VertBitSet *bs=nullptr) noexcept |
| | nullptr here means all valid points of point cloud
|
| | MR::PointCloudPart::PointCloudPart (const PointCloudPart &other) noexcept=default |
| | Make this assignable. A better idea would be to rewrite the class to not use references, but doing this instead preserves API compatibility.
|
| PointCloudPart & | MR::PointCloudPart::operator= (const PointCloudPart &other) noexcept |
| bool | MR::dilateRegion (const PointCloud &pointCloud, VertBitSet ®ion, float dilation, ProgressCallback cb={}, const AffineXf3f *xf=nullptr) |
| | expands the region on given euclidian distance. returns false if callback also returns false
|
| bool | MR::erodeRegion (const PointCloud &pointCloud, VertBitSet ®ion, float erosion, ProgressCallback cb={}, const AffineXf3f *xf=nullptr) |
| | shrinks the region on given euclidian distance. returns false if callback also returns false
|
| | MR::PointMeasurementObject::PointMeasurementObject ()=default |
| | MR::PointMeasurementObject::PointMeasurementObject (PointMeasurementObject &&) noexcept=default |
| PointMeasurementObject & | MR::PointMeasurementObject::operator= (PointMeasurementObject &&) noexcept=default |
| static constexpr const char * | MR::PointMeasurementObject::StaticTypeName () noexcept |
| const char * | MR::PointMeasurementObject::typeName () const override |
| static constexpr const char * | MR::PointMeasurementObject::StaticClassName () noexcept |
| std::string | MR::PointMeasurementObject::className () const override |
| static constexpr const char * | MR::PointMeasurementObject::StaticClassNameInPlural () noexcept |
| std::string | MR::PointMeasurementObject::classNameInPlural () const override |
| | MR::PointMeasurementObject::PointMeasurementObject (ProtectedStruct, const PointMeasurementObject &obj) |
| std::shared_ptr< Object > | MR::PointMeasurementObject::clone () const override |
| std::shared_ptr< Object > | MR::PointMeasurementObject::shallowClone () const override |
| bool | MR::PointMeasurementObject::supportsVisualizeProperty (AnyVisualizeMaskEnum type) const override |
| | Returns true if this class supports the property type. Otherwise passing it to the functions below is illegal.
|
| AllVisualizeProperties | MR::PointMeasurementObject::getAllVisualizeProperties () const override |
| | get all visualize properties masks
|
| const ViewportMask & | MR::PointMeasurementObject::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| | returns mask of viewports where given property is set
|
| Vector3f | MR::PointMeasurementObject::getLocalPoint (ViewportId id={}) const |
| | calculates point from xf
|
| Vector3f | MR::PointMeasurementObject::getWorldPoint (ViewportId id={}) const |
| void | MR::PointMeasurementObject::setLocalPoint (const Vector3f &point, ViewportId id={}) |
| | updates xf to fit given point
|
| void | MR::PointMeasurementObject::setWorldPoint (const Vector3f &point, ViewportId id={}) |
| std::size_t | MR::PointMeasurementObject::numComparableProperties () const override |
| | Implement ObjectComparableWithReference:
|
| std::string_view | MR::PointMeasurementObject::getComparablePropertyName (std::size_t i) const override |
| | i goes up to numComparableProperties(), exclusive.
|
| std::optional< ComparableProperty > | MR::PointMeasurementObject::computeComparableProperty (std::size_t i) const override |
| std::optional< ComparisonTolerance > | MR::PointMeasurementObject::getComparisonTolerence (std::size_t i) const override |
| void | MR::PointMeasurementObject::setComparisonTolerance (std::size_t i, std::optional< ComparisonTolerance > newTolerance) override |
| bool | MR::PointMeasurementObject::comparisonToleranceIsAlwaysOnlyPositive (std::size_t i) const override |
| std::size_t | MR::PointMeasurementObject::numComparisonReferenceValues () const override |
| std::string_view | MR::PointMeasurementObject::getComparisonReferenceValueName (std::size_t i) const override |
| | i goes up to numComparisonReferenceValues(), exclusive.
|
| ComparisonReferenceValue | MR::PointMeasurementObject::getComparisonReferenceValue (std::size_t i) const override |
| void | MR::PointMeasurementObject::setComparisonReferenceValue (std::size_t i, std::optional< ComparisonReferenceValue::Var > value) override |
| | MR::PointMeasurementObject::PointMeasurementObject (const PointMeasurementObject &other)=default |
| void | MR::PointMeasurementObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| void | MR::PointMeasurementObject::serializeFields_ (Json::Value &root) const override |
| void | MR::PointMeasurementObject::deserializeFields_ (const Json::Value &root) override |
| void | MR::PointMeasurementObject::setupRenderObject_ () const override |
| | MR::PointObject::PointObject () |
| | Creates simple point object with zero position.
|
| | MR::PointObject::PointObject (const std::vector< Vector3f > &pointsToApprox) |
| | Finds best point to approx given points.
|
| | MR::PointObject::PointObject (PointObject &&) noexcept=default |
| PointObject & | MR::PointObject::operator= (PointObject &&) noexcept=default |
| static constexpr const char * | MR::PointObject::StaticTypeName () noexcept |
| virtual const char * | MR::PointObject::typeName () const override |
| static constexpr const char * | MR::PointObject::StaticClassName () noexcept |
| virtual std::string | MR::PointObject::className () const override |
| static constexpr const char * | MR::PointObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::PointObject::classNameInPlural () const override |
| | MR::PointObject::PointObject (ProtectedStruct, const PointObject &obj) |
| virtual std::shared_ptr< Object > | MR::PointObject::clone () const override |
| virtual std::shared_ptr< Object > | MR::PointObject::shallowClone () const override |
| Vector3f | MR::PointObject::getPoint (ViewportId id={}) const |
| | calculates point from xf
|
| void | MR::PointObject::setLocalPoint (const Vector3f &point, ViewportId id={}) |
| | updates xf to fit given point
|
| virtual std::vector< FeatureObjectSharedProperty > & | MR::PointObject::getAllSharedProperties () const override |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| FeatureObjectProjectPointResult | MR::PointObject::projectPoint (const Vector3f &, ViewportId id={}) const override |
| | MR::PointObject::PointObject (const PointObject &other)=default |
| virtual void | MR::PointObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::PointObject::serializeFields_ (Json::Value &root) const override |
| virtual Expected< std::future< Expected< void > > > | MR::PointObject::serializeModel_ (const std::filesystem::path &) const override |
| virtual Expected< void > | MR::PointObject::deserializeModel_ (const std::filesystem::path &, ProgressCallback) override |
| | Reads model from file.
|
| void | MR::PointObject::setupRenderObject_ () const override |
| bool | MR::PointOnFace::valid () const |
| | check for validity, otherwise the point is not defined
|
| | MR::PointOnFace::operator bool () const |
| | MR::PointOnObject::PointOnObject () |
| | MR::PointOnObject::operator PointOnFace () const |
| PickedPoint | MR::pointOnObjectToPickedPoint (const VisualObject *object, const PointOnObject &pos) |
| | Converts PointOnObject coordinates depending on the object type to the PickedPoint variant.
|
| std::optional< Vector3f > | MR::getPickedPointPosition (const VisualObject &object, const PickedPoint &point) |
| MR_BIND_IGNORE Vector3f | MR::pickedPointToVector3 (const VisualObject *object, const PickedPoint &point) |
| | Converts pickedPoint into local coordinates of its object.
|
| MR_BIND_IGNORE bool | MR::isPickedPointValid (const VisualObject *object, const PickedPoint &point) |
| | Checks that the picked point presents in the object's topology.
|
| std::optional< Vector3f > | MR::getPickedPointNormal (const VisualObject &object, const PickedPoint &point, bool interpolated=true) |
| virtual | MR::IPointsToMeshProjector::~IPointsToMeshProjector ()=default |
| virtual void | MR::IPointsToMeshProjector::updateMeshData (const Mesh *mesh)=0 |
| | Updates all data related to the referencing mesh.
|
| virtual void | MR::IPointsToMeshProjector::findProjections (std::vector< MeshProjectionResult > &result, const std::vector< Vector3f > &points, const AffineXf3f *worldXf=nullptr, const AffineXf3f *worldRefXf=nullptr, float upDistLimitSq=FLT_MAX, float loDistLimitSq=0.0f)=0 |
| | Computes the closest point on mesh to each of given points.
|
| virtual size_t | MR::IPointsToMeshProjector::projectionsHeapBytes (size_t numProjections) const =0 |
| | Returns amount of memory needed to compute projections.
|
| VertScalars | MR::findSignedDistances (const Mesh &refMesh, const VertCoords &testPoints, const VertBitSet *validTestPoints={}, const MeshProjectionParameters ¶ms={}, IPointsToMeshProjector *projector={}) |
| | if projector is not given then CPU's computations will be used
|
| VertScalars | MR::findSignedDistances (const Mesh &refMesh, const Mesh &mesh, const MeshProjectionParameters ¶ms={}, IPointsToMeshProjector *projector={}) |
| | if projector is not given then CPU's computations will be used
|
| virtual void | MR::PointsToMeshProjector::updateMeshData (const Mesh *mesh) override |
| | update all data related to the referencing mesh
|
| virtual void | MR::PointsToMeshProjector::findProjections (std::vector< MeshProjectionResult > &result, const std::vector< Vector3f > &points, const AffineXf3f *objXf, const AffineXf3f *refObjXf, float upDistLimitSq, float loDistLimitSq) override |
| | Computes the closest point on mesh to each of given points.
|
| virtual size_t | MR::PointsToMeshProjector::projectionsHeapBytes (size_t numProjections) const override |
| | Returns amount of additional memory needed to compute projections.
|
| size_t | MR::PolylineComponents::getNumComponents (const PolylineTopology &topology) |
| | returns the number of connected components in polyline
|
| DecimatePolylineResult | MR::decimatePolyline (Polyline3 &polyline, const DecimatePolylineSettings3 &settings={}) |
| DecimatePolylineResult | MR::decimateContour (Contour3f &contour, const DecimatePolylineSettings3 &settings={}) |
| | MR::PolylineUndirectedEdgeIterator::PolylineUndirectedEdgeIterator (const PolylineTopology &topology) |
| | creates begin iterator
|
| | MR::PolylineUndirectedEdgeIterator::PolylineUndirectedEdgeIterator ()=default |
| | creates end iterator
|
| PolylineUndirectedEdgeIterator & | MR::PolylineUndirectedEdgeIterator::operator++ () |
| UndirectedEdgeId | MR::PolylineUndirectedEdgeIterator::operator* () const |
| template<typename T, typename F1, typename F2> |
| void | MR::PolylineTopology::buildFromContours (const std::vector< std::vector< T > > &contours, F1 &&reservePoints, F2 &&addPoint) |
| void | MR::PolylineTopology::buildOpenLines (const std::vector< VertId > &comp2firstVert) |
| template<typename T, typename F> |
| std::vector< std::vector< T > > | MR::PolylineTopology::convertToContours (F &&getPoint, std::vector< std::vector< VertId > > *vertMap=nullptr) const |
| | converts this topology into contours of given type using the functor returning point by its Id
|
| EdgeId | MR::PolylineTopology::makeEdge () |
| | creates an edge not associated with any vertex
|
| EdgeId | MR::PolylineTopology::makeEdge (VertId a, VertId b, EdgeId e={}) |
| int | MR::PolylineTopology::makeEdges (const Edges &edges) |
| bool | MR::PolylineTopology::isLoneEdge (EdgeId a) const |
| | checks whether the edge is disconnected from all other edges and disassociated from all vertices (as if after makeEdge)
|
| UndirectedEdgeId | MR::PolylineTopology::lastNotLoneUndirectedEdge () const |
| | returns last not lone undirected edge id, or invalid id if no such edge exists
|
| EdgeId | MR::PolylineTopology::lastNotLoneEdge () const |
| | returns last not lone edge id, or invalid id if no such edge exists
|
| size_t | MR::PolylineTopology::edgeSize () const |
| | returns the number of half-edge records including lone ones
|
| size_t | MR::PolylineTopology::edgeCapacity () const |
| | returns the number of allocated edge records
|
| size_t | MR::PolylineTopology::undirectedEdgeSize () const |
| | returns the number of undirected edges (pairs of half-edges) including lone ones
|
| size_t | MR::PolylineTopology::undirectedEdgeCapacity () const |
| | returns the number of allocated undirected edges (pairs of half-edges)
|
| size_t | MR::PolylineTopology::computeNotLoneUndirectedEdges () const |
| | computes the number of not-lone (valid) undirected edges
|
| void | MR::PolylineTopology::edgeReserve (size_t newCapacity) |
| | sets the capacity of half-edges vector
|
| bool | MR::PolylineTopology::hasEdge (EdgeId e) const |
| | returns true if given edge is within valid range and not-lone
|
| void | MR::PolylineTopology::deleteEdge (UndirectedEdgeId ue) |
| | given edge becomes lone after the call, so it is un-spliced from connected edges, and if it was not connected at origin or destination, then that vertex is deleted as well
|
| void | MR::PolylineTopology::deleteEdges (const UndirectedEdgeBitSet &es) |
| | calls deleteEdge for every set bit
|
| size_t | MR::PolylineTopology::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| void | MR::PolylineTopology::splice (EdgeId a, EdgeId b) |
| EdgeId | MR::PolylineTopology::next (EdgeId he) const |
| | next (counter clock wise) half-edge in the origin ring
|
| VertId | MR::PolylineTopology::org (EdgeId he) const |
| | returns origin vertex of half-edge
|
| VertId | MR::PolylineTopology::dest (EdgeId he) const |
| | returns destination vertex of half-edge
|
| void | MR::PolylineTopology::setOrg (EdgeId a, VertId v) |
| const Vector< EdgeId, VertId > & | MR::PolylineTopology::edgePerVertex () const |
| | for all valid vertices this vector contains an edge with the origin there
|
| Vector< VertId, EdgeId > | MR::PolylineTopology::getOrgs () const |
| | for all edges this vector contains its origin
|
| EdgeId | MR::PolylineTopology::edgeWithOrg (VertId a) const |
| | returns valid edge if given vertex is present in the mesh
|
| bool | MR::PolylineTopology::hasVert (VertId a) const |
| | returns true if given vertex is present in the mesh
|
| int | MR::PolylineTopology::getVertDegree (VertId a) const |
| | returns 0 if given vertex does not exist, 1 if it has one incident edge, and 2 if it has two incident edges
|
| int | MR::PolylineTopology::numValidVerts () const |
| | returns the number of valid vertices
|
| VertId | MR::PolylineTopology::lastValidVert () const |
| | returns last valid vertex id, or invalid id if no single valid vertex exists
|
| VertId | MR::PolylineTopology::addVertId () |
| | creates new vert-id not associated with any edge yet
|
| void | MR::PolylineTopology::vertResize (size_t newSize) |
| | explicitly increases the size of vertices vector
|
| void | MR::PolylineTopology::vertResizeWithReserve (size_t newSize) |
| | explicitly increases the size of vertices vector, doubling the current capacity if it was not enough
|
| void | MR::PolylineTopology::vertReserve (size_t newCapacity) |
| | sets the capacity of vertices vector
|
| size_t | MR::PolylineTopology::vertSize () const |
| | returns the number of vertex records including invalid ones
|
| size_t | MR::PolylineTopology::vertCapacity () const |
| | returns the number of allocated vert records
|
| const VertBitSet & | MR::PolylineTopology::getValidVerts () const |
| | returns cached set of all valid vertices
|
| const VertBitSet & | MR::PolylineTopology::getVertIds (const VertBitSet *region) const |
| | if region pointer is not null then converts it in reference, otherwise returns all valid vertices in the mesh
|
| EdgeId | MR::PolylineTopology::findEdge (VertId o, VertId d) const |
| | finds and returns edge from o to d in the mesh; returns invalid edge otherwise
|
| VertBitSet | MR::PolylineTopology::getPathVertices (const EdgePath &path) const |
| | returns all vertices incident to path edges
|
| EdgeId | MR::PolylineTopology::splitEdge (EdgeId e) |
| EdgeId | MR::PolylineTopology::makePolyline (const VertId *vs, size_t num) |
| void | MR::PolylineTopology::addPart (const PolylineTopology &from, VertMap *outVmap=nullptr, WholeEdgeMap *outEmap=nullptr) |
| void | MR::PolylineTopology::addPartByMask (const PolylineTopology &from, const UndirectedEdgeBitSet &mask, VertMap *outVmap=nullptr, EdgeMap *outEmap=nullptr) |
| | appends polyline topology (from) in addition to the current topology: creates new edges, verts;
|
| void | MR::PolylineTopology::pack (VertMap *outVmap=nullptr, WholeEdgeMap *outEmap=nullptr) |
| void | MR::PolylineTopology::write (std::ostream &s) const |
| | saves this in binary stream
|
| bool | MR::PolylineTopology::read (std::istream &s) |
| | loads this from binary stream
|
| bool | MR::PolylineTopology::operator== (const PolylineTopology &b) const |
| | comparison via edges (all other members are considered as not important caches)
|
| bool | MR::PolylineTopology::operator!= (const PolylineTopology &b) const |
| bool | MR::PolylineTopology::isConsistentlyOriented () const |
| | returns true if for each edge e: e == e.next() || e.odd() == next( e ).sym().odd()
|
| void | MR::PolylineTopology::flip () |
| | changes the orientation of all edges: every edge e is replaced with e.sym()
|
| bool | MR::PolylineTopology::checkValidity () const |
| | verifies that all internal data structures are valid
|
| void | MR::PolylineTopology::computeValidsFromEdges () |
| | computes numValidVerts_ and validVerts_ from edgePerVertex_
|
| bool | MR::PolylineTopology::isClosed () const |
| | returns true if the polyline does not have any holes
|
| bool | MR::PolylineTopology::HalfEdgeRecord::operator== (const HalfEdgeRecord &b) const |
| | MR::PolylineTopology::HalfEdgeRecord::HalfEdgeRecord () noexcept=default |
| | MR::PolylineTopology::HalfEdgeRecord::HalfEdgeRecord (NoInit) noexcept |
| | MR::PolylineMaker::PolylineMaker (PolylineTopology &t) |
| EdgeId | MR::PolylineMaker::start (VertId v) |
| EdgeId | MR::PolylineMaker::proceed (VertId v) |
| void | MR::PolylineMaker::close () |
| | closes the polyline
|
| void | MR::PolylineMaker::finishOpen (VertId v) |
| | finishes the polyline adding final vertex in it
|
| UndirectedEdgeBitSet | MR::subdivideWithPlane (Polyline3 &polyline, const Plane3f &plane, EdgeBitSet *newPositiveEdges={}, std::function< void(EdgeId, EdgeId, float)> onEdgeSplitCallback={}) |
| MR_BIND_IGNORE UndirectedEdgeBitSet | MR::subdividePolylineWithPlane (Polyline3 &polyline, const Plane3f &plane, std::function< void(EdgeId, EdgeId, float)> onEdgeSplitCallback={}) |
| void | MR::trimWithPlane (Polyline3 &polyline, const Plane3f &plane, const DividePolylineParameters ¶ms={}) |
| MR_BIND_IGNORE void | MR::dividePolylineWithPlane (Polyline3 &polyline, const Plane3f &plane, const DividePolylineParameters ¶ms={}) |
| std::vector< EdgeSegment > | MR::extractSectionsFromPolyline (const Polyline3 &polyline, const Plane3f &plane, float eps, UndirectedEdgeBitSet *positiveEdges={}) |
| | MR::PositionedText::PositionedText ()=default |
| | MR::PositionedText::PositionedText (const std::string &text, const Vector3f &position) |
| bool | MR::PositionedText::operator== (const PositionedText &) const =default |
| void | MR::positionVertsSmoothly (Mesh &mesh, const VertBitSet &verts, EdgeWeights edgeWeights=EdgeWeights::Cotan, VertexMass vmass=VertexMass::Unit, const VertBitSet *fixedSharpVertices=nullptr) |
| void | MR::positionVertsSmoothly (const MeshTopology &topology, VertCoords &points, const VertBitSet &verts, EdgeWeights edgeWeights=EdgeWeights::Cotan, VertexMass vmass=VertexMass::Unit, const VertBitSet *fixedSharpVertices=nullptr) |
| void | MR::positionVertsSmoothlySharpBd (Mesh &mesh, const PositionVertsSmoothlyParams ¶ms) |
| | Puts given vertices in such positions to make smooth surface inside verts-region, but sharp on its boundary;.
|
| void | MR::positionVertsSmoothlySharpBd (const MeshTopology &topology, VertCoords &points, const PositionVertsSmoothlyParams ¶ms) |
| void | MR::positionVertsSmoothlySharpBd (Mesh &mesh, const VertBitSet &verts) |
| void | MR::positionVertsWithSpacing (Mesh &mesh, const SpacingSettings &settings) |
| | Moves given vertices to make the distances between them as specified.
|
| void | MR::positionVertsWithSpacing (const MeshTopology &topology, VertCoords &points, const SpacingSettings &settings) |
| void | MR::inflate (Mesh &mesh, const VertBitSet &verts, const InflateSettings &settings) |
| void | MR::inflate (const MeshTopology &topology, VertCoords &points, const VertBitSet &verts, const InflateSettings &settings) |
| void | MR::inflate1 (const MeshTopology &topology, VertCoords &points, const VertBitSet &verts, float pressure) |
| | MR::PrecipitationSimulator::PrecipitationSimulator (WatershedGraph &wg) |
| | initializes modeling from the initial subdivision of the terrain
|
| SimulationStep | MR::PrecipitationSimulator::simulateOne () |
| | processes the next event happened with the terrain basins
|
| | MR::SegmentSegmentIntersectResult::operator bool () const |
| | MR::TriangleSegmentIntersectResult::operator bool () const |
| | MR::PriorityQueue< T, P >::PriorityQueue () |
| | constructs empty queue
|
| | MR::PriorityQueue< T, P >::PriorityQueue (const P &pred) |
| | MR::PriorityQueue< T, P >::PriorityQueue (const P &pred, Container &&v MR_LIFETIMEBOUND_NESTED) |
| | initializes queue elements from given vector
|
| bool | MR::PriorityQueue< T, P >::empty () const |
| | checks if the queue has no elements
|
| size_type | MR::PriorityQueue< T, P >::size () const |
| | returns the number of elements
|
| const T & | MR::PriorityQueue< T, P >::top () const MR_LIFETIMEBOUND |
| | accesses the top element
|
| void | MR::PriorityQueue< T, P >::push (const value_type &value MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| | inserts element in the queue
|
| void | MR::PriorityQueue< T, P >::push (value_type &&value MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| template<class... Args> |
| void | MR::PriorityQueue< T, P >::emplace (Args &&... args) |
| void | MR::PriorityQueue< T, P >::pop () |
| | removes the top element from the priority queue
|
| Mesh | MR::makePrism (float baseLength, float leftAngle, float rightAngle, float height=1.0f) |
| MR_BIND_IGNORE void | MR::processSelfSubtasks (const AABBTree &tree, std::vector< NodeNode > &subtasks, std::vector< NodeNode > &nextSubtasks, std::function< Processing(const NodeNode &)> processLeaf, std::function< Processing(const Box3f &lBox, const Box3f &rBox)> processNodes) |
| | This function process all subtasks in one tree
left/right == right/left in this case, so on same non-leaf nodes it only adds 3 next subtasks,
same leafs are skipped and different leafs area processed with processLeaf callback.
|
| bool | MR::reportProgress (ProgressCallback cb, float v) |
| | safely invokes
|
| bool | MR::reportProgress (ProgressCallback cb, float v, size_t counter, int divider) |
| template<typename F> |
| bool | MR::reportProgress (ProgressCallback cb, F &&f) |
| template<typename F> |
| bool | MR::reportProgress (ProgressCallback cb, F &&f, size_t counter, int divider) |
| ProgressCallback | MR::subprogress (ProgressCallback cb, float from, float to) |
| | returns a callback that maps [0,1] linearly into [from,to] in the call to
|
| template<typename F> |
| ProgressCallback | MR::subprogress (ProgressCallback cb, F &&f) |
| | returns a callback that maps the value with given function
|
| ProgressCallback | MR::subprogress (ProgressCallback cb, size_t index, size_t count) |
| | returns a callback that maps [0,1] linearly into [(index+0)/count,(index+1)/count] in the call to
|
| bool | MR::writeByBlocks (std::ostream &out, const char *data, size_t dataSize, ProgressCallback callback={}, size_t blockSize=(size_t(1)<< 16)) |
| | write dataSize bytes from data to out stream by blocks blockSize bytes
|
| bool | MR::readByBlocks (std::istream &in, char *data, size_t dataSize, ProgressCallback callback={}, size_t blockSize=(size_t(1)<< 16)) |
| | read dataSize bytes from in stream to data by blocks blockSize bytes
|
| template<typename F> |
| bool | MR::projectVertAttribute (const MeshVertPart &mp, const Mesh &oldMesh, F &&func, const ProjectAttributeParams ¶ms={}) |
| template<typename F> |
| bool | MR::projectFaceAttribute (const MeshPart &mp, const Mesh &oldMesh, F &&func, const ProjectAttributeParams ¶ms={}) |
| Expected< void > | MR::projectObjectMeshData (const ObjectMeshData &oldMeshData, ObjectMeshData &newMeshData, const FaceBitSet *region=nullptr, const ProjectAttributeParams ¶ms={}) |
| | finds attributes of new mesh by projecting faces/vertices on old mesh
|
| T | MR::QuadraticForm< V >::eval (const V &x) const |
| | evaluates the function at given x
|
| void | MR::QuadraticForm< V >::addDistToOrigin (T weight) |
| | adds to this squared distance to the origin point
|
| void | MR::QuadraticForm< V >::addDistToPlane (const V &planeUnitNormal) |
| | adds to this squared distance to plane passing via origin with given unit normal
|
| void | MR::QuadraticForm< V >::addDistToPlane (const V &planeUnitNormal, T weight) |
| void | MR::QuadraticForm< V >::addDistToLine (const V &lineUnitDir) |
| | adds to this squared distance to line passing via origin with given unit direction
|
| void | MR::QuadraticForm< V >::addDistToLine (const V &lineUnitDir, T weight) |
| constexpr | MR::Quaternion< T >::Quaternion () noexcept=default |
| constexpr | MR::Quaternion< T >::Quaternion (T a, T b, T c, T d) noexcept |
| constexpr | MR::Quaternion< T >::Quaternion (const Vector3< T > &axis, T angle) noexcept |
| constexpr | MR::Quaternion< T >::Quaternion (T real, const Vector3< T > &im) noexcept |
| constexpr | MR::Quaternion< T >::Quaternion (const Matrix3< T > &m) |
| constexpr | MR::Quaternion< T >::Quaternion (const Vector3< T > &from, const Vector3< T > &to) noexcept |
| | finds shorter arc rotation quaternion from one vector to another
|
| constexpr Vector3< T > | MR::Quaternion< T >::im () const noexcept |
| | returns imaginary part of the quaternion as a vector
|
| constexpr T | MR::Quaternion< T >::angle () const noexcept |
| | returns angle of rotation encoded in this quaternion
|
| constexpr Vector3< T > | MR::Quaternion< T >::axis () const noexcept |
| | returns axis of rotation encoded in this quaternion
|
| constexpr T | MR::Quaternion< T >::normSq () const |
| constexpr T | MR::Quaternion< T >::norm () const |
| constexpr Quaternion | MR::Quaternion< T >::operator- () const |
| | returns quaternion representing the same rotation, using the opposite rotation direction and opposite angle
|
| void | MR::Quaternion< T >::normalize () |
| | scales this quaternion to make its norm unit
|
| Quaternion | MR::Quaternion< T >::normalized () const |
| constexpr Quaternion | MR::Quaternion< T >::conjugate () const noexcept |
| | computes conjugate quaternion, which for unit quaternions encodes the opposite rotation
|
| constexpr Quaternion | MR::Quaternion< T >::inverse () const noexcept |
| | computes reciprocal quaternion
|
| constexpr Vector3< T > | MR::Quaternion< T >::operator() (const Vector3< T > &p) const noexcept |
| | MR::Quaternion< T >::operator Matrix3< T > () const |
| | converts this into 3x3 rotation matrix
|
| static Quaternion | MR::Quaternion< T >::lerp (const Quaternion &q0, const Quaternion &q1, T t) |
| | given t in [0,1], interpolates linearly two quaternions giving in general not-unit quaternion
|
| static Quaternion | MR::Quaternion< T >::slerp (Quaternion q0, Quaternion q1, T t) |
| | given t in [0,1] and two unit quaternions, interpolates them spherically and produces another unit quaternion
|
| static Matrix3< T > | MR::Quaternion< T >::slerp (const Matrix3< T > &m0, const Matrix3< T > &m1, T t) |
| | given t in [0,1] and two rotation matrices, interpolates them spherically and produces another rotation matrix
|
| static AffineXf3< T > | MR::Quaternion< T >::slerp (const AffineXf3< T > &xf0, const AffineXf3< T > &xf1, T t, const Vector3< T > &p={}) |
| Quaternion & | MR::Quaternion< T >::operator*= (T s) |
| Quaternion & | MR::Quaternion< T >::operator/= (T s) |
| Expected< void > | MR::compensateRadius (Mesh &mesh, const CompensateRadiusParams ¶ms) |
| | MR::RadiusMeasurementObject::RadiusMeasurementObject () |
| | MR::RadiusMeasurementObject::RadiusMeasurementObject (RadiusMeasurementObject &&) noexcept=default |
| RadiusMeasurementObject & | MR::RadiusMeasurementObject::operator= (RadiusMeasurementObject &&) noexcept=default |
| static constexpr const char * | MR::RadiusMeasurementObject::StaticTypeName () noexcept |
| const char * | MR::RadiusMeasurementObject::typeName () const override |
| static constexpr const char * | MR::RadiusMeasurementObject::StaticClassName () noexcept |
| virtual std::string | MR::RadiusMeasurementObject::className () const override |
| static constexpr const char * | MR::RadiusMeasurementObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::RadiusMeasurementObject::classNameInPlural () const override |
| | MR::RadiusMeasurementObject::RadiusMeasurementObject (ProtectedStruct, const RadiusMeasurementObject &obj) |
| | For std::make_shared() in clone().
|
| std::shared_ptr< Object > | MR::RadiusMeasurementObject::clone () const override |
| std::shared_ptr< Object > | MR::RadiusMeasurementObject::shallowClone () const override |
| Vector3f | MR::RadiusMeasurementObject::getWorldCenter () const |
| | Get the center in world coordinates.
|
| Vector3f | MR::RadiusMeasurementObject::getLocalCenter () const |
| | Get the center in local coordinates.
|
| Vector3f | MR::RadiusMeasurementObject::getWorldRadiusAsVector () const |
| | The length of this vector is the radius, and the direction is the preferred line drawing direction.
|
| Vector3f | MR::RadiusMeasurementObject::getLocalRadiusAsVector () const |
| Vector3f | MR::RadiusMeasurementObject::getWorldNormal () const |
| | The preferred radius normal, for non-spherical radiuses.
|
| Vector3f | MR::RadiusMeasurementObject::getLocalNormal () const |
| virtual void | MR::RadiusMeasurementObject::setLocalCenter (const MR::Vector3f ¢er) |
| virtual void | MR::RadiusMeasurementObject::setLocalRadiusAsVector (const MR::Vector3f &radiusVec, const Vector3f &normal) |
| void | MR::RadiusMeasurementObject::setLocalRadiusAsVector (const MR::Vector3f &radiusVec) |
| | Same, but without a preferred normal.
|
| bool | MR::RadiusMeasurementObject::getDrawAsDiameter () const |
| | Whether we should draw this as a diameter instead of a radius.
|
| virtual void | MR::RadiusMeasurementObject::setDrawAsDiameter (bool value) |
| bool | MR::RadiusMeasurementObject::getIsSpherical () const |
| | Whether this is a sphere radius, as opposed to circle/cylinder radius.
|
| virtual void | MR::RadiusMeasurementObject::setIsSpherical (bool value) |
| float | MR::RadiusMeasurementObject::getVisualLengthMultiplier () const |
| virtual void | MR::RadiusMeasurementObject::setVisualLengthMultiplier (float value) |
| float | MR::RadiusMeasurementObject::computeRadiusOrDiameter () const |
| | Computes the radius/diameter value, as if by getLocalRadiusAsVector(), possibly multiplied by two if getDrawAsDiameter().
|
| std::vector< std::string > | MR::RadiusMeasurementObject::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| | MR::RadiusMeasurementObject::RadiusMeasurementObject (const RadiusMeasurementObject &other)=default |
| void | MR::RadiusMeasurementObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| void | MR::RadiusMeasurementObject::serializeFields_ (Json::Value &root) const override |
| void | MR::RadiusMeasurementObject::deserializeFields_ (const Json::Value &root) override |
| void | MR::RadiusMeasurementObject::setupRenderObject_ () const override |
| void | MR::RadiusMeasurementObject::onWorldXfChanged_ () override |
| | Emits worldXfChangedSignal, but derived classes can add additional behavior to it.
|
| template<typename T> |
| bool | MR::rayBoxIntersect (const Box2< T > &box, const Vector2< T > &rayOrigin, T &t0, T &t1, const IntersectionPrecomputes2< T > &prec) |
| template<typename T = float> |
| bool | MR::rayBoxIntersect (const Box2< T > &box, const Line2< T > &line, T t0, T t1) |
| EdgeLoop | MR::trackLeftBoundaryLoop (const MeshTopology &topology, EdgeId e0, const FaceBitSet *region=nullptr) |
| EdgeLoop | MR::trackLeftBoundaryLoop (const MeshTopology &topology, const FaceBitSet ®ion, EdgeId e0) |
| EdgeLoop | MR::trackRightBoundaryLoop (const MeshTopology &topology, EdgeId e0, const FaceBitSet *region=nullptr) |
| EdgeLoop | MR::trackRightBoundaryLoop (const MeshTopology &topology, const FaceBitSet ®ion, EdgeId e0) |
| EdgeId | MR::extractPath (const MeshTopology &topology, EdgeId e0, EdgeBitSet &edges, EdgePath *outPath, Turn turn) |
| std::vector< EdgeLoop > | MR::extractAllLoops (const MeshTopology &topology, EdgeBitSet &edges, Turn turn) |
| std::vector< EdgeLoop > | MR::findLeftBoundary (const MeshTopology &topology, const FaceBitSet *region=nullptr) |
| MR_BIND_IGNORE std::vector< EdgeLoop > | MR::findLeftBoundary (const MeshTopology &topology, const FaceBitSet ®ion) |
| | This is skipped in the bindings because it conflicts with the overload taking a pointer in C#. Since that overload is strictly more useful, we're keeping that one.
|
| std::vector< EdgeLoop > | MR::findRightBoundary (const MeshTopology &topology, const FaceBitSet *region=nullptr) |
| MR_BIND_IGNORE std::vector< EdgeLoop > | MR::findRightBoundary (const MeshTopology &topology, const FaceBitSet ®ion) |
| | This is skipped in the bindings because it conflicts with the overload taking a pointer in C#. Since that overload is strictly more useful, we're keeping that one.
|
| EdgeBitSet | MR::findAllLeftBdEdges (const MeshTopology &topology, const FaceBitSet *region, bool innerMeshEdgesOnly=false) |
| std::vector< EdgeLoop > | MR::delRegionKeepBd (Mesh &mesh, const FaceBitSet *region=nullptr, bool keepLoneHoles=false) |
| MR_BIND_IGNORE std::vector< EdgeLoop > | MR::delRegionKeepBd (Mesh &mesh, const FaceBitSet ®ion, bool keepLoneHoles=false) |
| | This is skipped in the bindings because it conflicts with the overload taking a pointer in C#. Since that overload is strictly more useful, we're keeping that one.
|
| std::vector< EdgePath > | MR::findLeftBoundaryInsideMesh (const MeshTopology &topology, const FaceBitSet ®ion) |
| UndirectedEdgeBitSet | MR::findRegionBoundaryUndirectedEdgesInsideMesh (const MeshTopology &topology, const FaceBitSet ®ion) |
| | returns all region boundary edges, where each edge has a region face on one side, and a valid not-region face on another side
|
| FaceBitSet | MR::findRegionOuterFaces (const MeshTopology &topology, const FaceBitSet ®ion) |
| VertBitSet | MR::getIncidentVerts (const MeshTopology &topology, const FaceBitSet &faces) |
| | composes the set of all vertices incident to given faces
|
| const VertBitSet & | MR::getIncidentVerts (const MeshTopology &topology, const FaceBitSet *faces, VertBitSet &store) |
| VertBitSet | MR::getInnerVerts (const MeshTopology &topology, const FaceBitSet *region=nullptr) |
| | composes the set of all vertices not on the boundary of a hole and with all their adjacent faces in given set
|
| MR_BIND_IGNORE VertBitSet | MR::getInnerVerts (const MeshTopology &topology, const FaceBitSet ®ion) |
| VertBitSet | MR::getBoundaryVerts (const MeshTopology &topology, const FaceBitSet *region=nullptr) |
| | composes the set of all boundary vertices for given region (or whole mesh if !region)
|
| VertBitSet | MR::getRegionBoundaryVerts (const MeshTopology &topology, const FaceBitSet ®ion) |
| FaceBitSet | MR::getIncidentFaces (const MeshTopology &topology, const VertBitSet &verts) |
| | composes the set of all faces incident to given vertices
|
| FaceBitSet | MR::getInnerFaces (const MeshTopology &topology, const VertBitSet &verts) |
| | composes the set of all faces with all their vertices in given set
|
| EdgeBitSet | MR::getRegionEdges (const MeshTopology &topology, const FaceBitSet &faces) |
| | composes the set of all edges, having a face from given set at the left
|
| UndirectedEdgeBitSet | MR::getIncidentEdges (const MeshTopology &topology, const FaceBitSet &faces) |
| | composes the set of all undirected edges, having a face from given set from one of two sides
|
| UndirectedEdgeBitSet | MR::getIncidentEdges (const MeshTopology &topology, const UndirectedEdgeBitSet &edges) |
| | composes the set of all undirected edges, having at least one common vertex with an edge from given set
|
| VertBitSet | MR::getIncidentVerts (const MeshTopology &topology, const UndirectedEdgeBitSet &edges) |
| | composes the set of all vertices incident to given edges
|
| FaceBitSet | MR::getIncidentFaces (const MeshTopology &topology, const UndirectedEdgeBitSet &edges) |
| | composes the set of all faces incident to given edges
|
| FaceBitSet | MR::getNeighborFaces (const MeshTopology &topology, const UndirectedEdgeBitSet &edges) |
| | composes the set of all left and right faces of given edges
|
| UndirectedEdgeBitSet | MR::getInnerEdges (const MeshTopology &topology, const VertBitSet &verts) |
| | composes the set of all edges with all their vertices in given set
|
| UndirectedEdgeBitSet | MR::getInnerEdges (const MeshTopology &topology, const FaceBitSet ®ion) |
| | composes the set of all edges having both left and right in given region
|
| const VertBitSet & | MR::getIncidentVerts (const MeshTopology &topology, const UndirectedEdgeBitSet *edges, VertBitSet &store) |
| VertBitSet | MR::getInnerVerts (const MeshTopology &topology, const UndirectedEdgeBitSet &edges) |
| | composes the set of all vertices with all their edges in given set
|
| Expected< Mesh > | MR::makeRegularGridMesh (size_t width, size_t height, const RegularGridLatticeValidator &validator, const RegularGridLatticePositioner &positioner, const RegularGridMeshFaceValidator &faceValidator={}, ProgressCallback cb={}) |
| | Creates regular mesh with points in valid grid lattice.
|
| Expected< Mesh > | MR::makeRegularGridMesh (VertCoords pc, ProgressCallback cb={}) |
| | Creates regular mesh from monotone (connects point with closed x, y neighbors) points.
|
| void | MR::RegularMapMesher::setSurfacePC (const std::shared_ptr< PointCloud > &surfacePC) |
| | Sets surface Point Cloud.
|
| void | MR::RegularMapMesher::setDirectionsPC (const std::shared_ptr< PointCloud > &directionsPC) |
| | Sets directions Point Cloud.
|
| Expected< void > | MR::RegularMapMesher::loadDistances (int width, int height, const std::filesystem::path &path) |
| | Loads distances form distances file (1/distance)
|
| void | MR::RegularMapMesher::setDistances (int width, int height, const std::vector< float > &distances) |
| | Sets distances.
|
| Expected< Mesh > | MR::RegularMapMesher::createMesh () const |
| | Creates mesh if all components were successfully loaded.
|
| template<typename V> |
| V | MR::getLimitedPos (const V &pos, const V &guidePos, typename VectorTraits< V >::BaseType maxGuideDistSq) |
| | MR::TransparencyMode::TransparencyMode ()=default |
| | MR::TransparencyMode::TransparencyMode (bool alphaSort) |
| | MR::TransparencyMode::TransparencyMode (unsigned bgDepthTexId, unsigned fgColorTexId, unsigned fgDepthTexId) |
| bool | MR::TransparencyMode::isAlphaSortEnabled () const |
| bool | MR::TransparencyMode::isDepthPeelingEnabled () const |
| unsigned | MR::TransparencyMode::getBGDepthPeelingDepthTextureId () const |
| unsigned | MR::TransparencyMode::getFGDepthPeelingColorTextureId () const |
| unsigned | MR::TransparencyMode::getFGDepthPeelingDepthTextureId () const |
| template<typename T> |
| void | MR::resizeNoInit (std::vector< T > &vec, size_t targetSize) MR_REQUIRES_IF_SUPPORTED(sizeof(T) > 0 &&std |
| constexpr | MR::RigidScaleXf3< T >::RigidScaleXf3 () noexcept=default |
| constexpr | MR::RigidScaleXf3< T >::RigidScaleXf3 (const V &a, const V &b, T s) noexcept |
| template<typename U> |
| constexpr | MR::RigidScaleXf3< T >::RigidScaleXf3 (const RigidScaleXf3< U > &xf) noexcept |
| template<typename U> |
| constexpr | MR::RigidScaleXf3< T >::RigidScaleXf3 (const RigidXf3< U > &xf) noexcept |
| AffineXf3< T > | MR::RigidScaleXf3< T >::rigidScaleXf () const |
| | converts this into rigid (with scale) transformation, which non-linearly depends on angles
|
| AffineXf3< T > | MR::RigidScaleXf3< T >::linearXf () const |
| | converts this into not-rigid transformation but with matrix, which linearly depends on angles
|
| constexpr | MR::RigidXf3< T >::RigidXf3 () noexcept=default |
| constexpr | MR::RigidXf3< T >::RigidXf3 (const V &a, const V &b) noexcept |
| template<typename U> |
| constexpr | MR::RigidXf3< T >::RigidXf3 (const RigidXf3< U > &xf) noexcept |
| AffineXf3< T > | MR::RigidXf3< T >::rigidXf () const |
| | converts this into rigid transformation, which non-linearly depends on angles
|
| AffineXf3< T > | MR::RigidXf3< T >::linearXf () const |
| | converts this into not-rigid transformation but with matrix, which linearly depends on angles
|
| | MR::RingIterator< N >::RingIterator (const MeshTopology &topology, EdgeId edge, bool first) |
| RingIterator & | MR::RingIterator< N >::operator++ () |
| EdgeId | MR::RingIterator< N >::operator* () const |
| bool | MR::RingIterator< N >::first () const |
| | MR::NextEdgeSameOrigin::NextEdgeSameOrigin (const MeshTopology &topology) |
| EdgeId | MR::NextEdgeSameOrigin::next (EdgeId e) const |
| | MR::NextEdgeSameLeft::NextEdgeSameLeft (const MeshTopology &topology) |
| EdgeId | MR::NextEdgeSameLeft::next (EdgeId e) const |
| IteratorRange< OrgRingIterator > | MR::orgRing (const MeshTopology &topology, EdgeId edge) |
| IteratorRange< OrgRingIterator > | MR::orgRing (const MeshTopology &topology, VertId v) |
| IteratorRange< OrgRingIterator > | MR::orgRing0 (const MeshTopology &topology, EdgeId edge) |
| IteratorRange< LeftRingIterator > | MR::leftRing (const MeshTopology &topology, EdgeId edge) |
| IteratorRange< LeftRingIterator > | MR::leftRing (const MeshTopology &topology, FaceId f) |
| IteratorRange< LeftRingIterator > | MR::leftRing0 (const MeshTopology &topology, EdgeId edge) |
| Vector3f | MR::applyFloat (const AffineXf3d *xf, const Vector3f &p) |
| | returns the point as is or after application of given transform to it in double precision
|
| Vector3f | MR::applyFloat (const Matrix3d *m, const Vector3f &n) |
| | returns the normal as is or after application of given matrix to it in double precision
|
| Vector3d | MR::applyDouble (const AffineXf3d *xf, const Vector3f &p) |
| | converts given point in double precision and applies given transformation to it
|
| Vector3d | MR::applyDouble (const Matrix3d *m, const Vector3f &n) |
| | converts given normal in double precision and applies given matrix to it
|
| | MR::VertRenumber::VertRenumber (const VertBitSet &validVerts, bool saveValidOnly) |
| | prepares the mapping
|
| bool | MR::VertRenumber::saveValidOnly () const |
| int | MR::VertRenumber::sizeVerts () const |
| | return the total number of vertices to be saved
|
| int | MR::VertRenumber::operator() (VertId v) const |
| | return packed index (if saveValidOnly = true) or same index (if saveValidOnly = false)
|
| const VertCoords & | MR::transformPoints (const VertCoords &verts, const VertBitSet &validVerts, const AffineXf3d *xf, VertCoords &buf, const VertRenumber *vertRenumber=nullptr) |
| const VertNormals & | MR::transformNormals (const VertNormals &normals, const VertBitSet &validVerts, const Matrix3d *m, VertNormals &buf) |
| static const Color & | MR::SceneColors::get (Type type) |
| static void | MR::SceneColors::set (Type type, const Color &color) |
| static const char * | MR::SceneColors::getName (Type type) |
| | MR::SceneRootObject::SceneRootObject () |
| | MR::SceneRootObject::SceneRootObject (SceneRootObject &&) noexcept=default |
| SceneRootObject & | MR::SceneRootObject::operator= (SceneRootObject &&) noexcept=default |
| | MR::SceneRootObject::SceneRootObject (ProtectedStruct, const SceneRootObject &obj) |
| static constexpr const char * | MR::SceneRootObject::StaticTypeName () noexcept |
| virtual const char * | MR::SceneRootObject::typeName () const override |
| static constexpr const char * | MR::SceneRootObject::StaticClassName () noexcept |
| virtual std::string | MR::SceneRootObject::className () const override |
| static constexpr const char * | MR::SceneRootObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::SceneRootObject::classNameInPlural () const override |
| static constexpr const char * | MR::SceneRootObject::RootName () noexcept |
| virtual void | MR::SceneRootObject::setAncillary (bool) override |
| virtual bool | MR::SceneRootObject::select (bool) override |
| | selects the object, returns true if value changed, otherwise returns false
|
| virtual void | MR::SceneRootObject::setName (std::string) override |
| virtual std::shared_ptr< Object > | MR::SceneRootObject::clone () const override |
| | clones current object only, without parent and/or children
|
| std::shared_ptr< SceneRootObject > | MR::SceneRootObject::cloneRoot () const |
| | same as clone but returns correct type
|
| | MR::SceneRootObject::SceneRootObject (const SceneRootObject &other)=default |
| virtual void | MR::SceneRootObject::serializeFields_ (Json::Value &root) const override |
| void | MR::SceneRootObject::deserializeFields_ (const Json::Value &root) override |
| std::shared_ptr< SceneRootObject > | MR::createRootFormObject (std::shared_ptr< Object > obj) |
| static SceneRootObject & | MR::SceneRoot::get () |
| static std::shared_ptr< SceneRootObject > & | MR::SceneRoot::getSharedPtr () |
| static void | MR::SceneRoot::setScenePath (const std::filesystem::path &scenePath) |
| static const SceneRootObject & | MR::SceneRoot::constGet () |
| static std::shared_ptr< const SceneRootObject > | MR::SceneRoot::constGetSharedPtr () |
| static const std::filesystem::path & | MR::SceneRoot::getScenePath () |
| static void | MR::SceneSettings::reset () |
| | Reset all scene settings to default values.
|
| static bool | MR::SceneSettings::get (BoolType type) |
| static float | MR::SceneSettings::get (FloatType type) |
| static void | MR::SceneSettings::set (BoolType type, bool value) |
| static void | MR::SceneSettings::set (FloatType type, float value) |
| static ShadingMode | MR::SceneSettings::getDefaultShadingMode () |
| static void | MR::SceneSettings::setDefaultShadingMode (ShadingMode mode) |
| static const CNCMachineSettings & | MR::SceneSettings::getCNCMachineSettings () |
| static void | MR::SceneSettings::setCNCMachineSettings (const CNCMachineSettings &settings) |
| | MR::SegmPoint< T >::SegmPoint ()=default |
| | MR::SegmPoint< T >::SegmPoint (T a) |
| | MR::SegmPoint< T >::operator T () const |
| | MR::SegmPoint< T >::operator T& () |
| template<typename U> |
| U | MR::SegmPoint< T >::interpolate (const U &v0, const U &v1) const |
| | given values in two vertices, computes interpolated value at this point
|
| int | MR::SegmPoint< T >::inVertex () const |
| | returns [0,1] if the point is in a vertex or -1 otherwise
|
| SegmPoint | MR::SegmPoint< T >::sym () const |
| | represents the same point relative to oppositely directed segment
|
| bool | MR::SegmPoint< T >::operator== (const SegmPoint &rhs) const =default |
| | returns true if two points have equal (a) representation
|
| bool | MR::SegmPoint< T >::operator== (T rhs) const |
| VertId | MR::SeparationPointStorage::Block::nextVid () const |
| | during filling, it is the id of next valid point;
|
| void | MR::SeparationPointStorage::resize (size_t blockCount, size_t blockSize) |
| | prepares storage for given number of blocks, each containing given size of voxels
|
| Block & | MR::SeparationPointStorage::getBlock (size_t blockIndex) |
| | get block for filling in the thread responsible for it
|
| int | MR::SeparationPointStorage::makeUniqueVids () |
| auto | MR::SeparationPointStorage::findSeparationPointSet (size_t voxelId) const -> const SeparationPointSet * |
| | finds the set (locating the block) by voxel id
|
| Triangulation | MR::SeparationPointStorage::getTriangulation (Vector< VoxelId, FaceId > *outVoxelPerFaceMap=nullptr) const |
| | combines triangulations from every block into one and returns it
|
| void | MR::SeparationPointStorage::getPoints (VertCoords &points) const |
| | obtains coordinates of all stored points
|
| void | MR::sharpenMarchingCubesMesh (const MeshPart &ref, Mesh &vox, Vector< VoxelId, FaceId > &face2voxel, const SharpenMarchingCubesMeshSettings &settings) |
| | MR::Signal< T >::Signal () noexcept=default |
| | MR::Signal< T >::Signal (const Signal &) noexcept |
| | MR::Signal< T >::Signal (Signal &&) noexcept=default |
| Signal & | MR::Signal< T >::operator= (const Signal &) noexcept |
| Signal & | MR::Signal< T >::operator= (Signal &&) noexcept=default |
| Signal & | MR::Signal< T >::operator= (boost::signals2::signal< T > &&b) noexcept |
| const char * | MR::asString (SignDetectionMode m) |
| | returns string representation of enum values
|
| std::vector< Vector3f > | MR::sampleHalfSphere () |
| | returns quasi-uniform 145 samples on unit half-sphere z>0
|
| VertScalars | MR::computeSkyViewFactor (const Mesh &terrain, const VertCoords &samples, const VertBitSet &validSamples, const std::vector< SkyPatch > &skyPatches, BitSet *outSkyRays=nullptr, std::vector< MeshIntersectionResult > *outIntersections=nullptr) |
| BitSet | MR::findSkyRays (const Mesh &terrain, const VertCoords &samples, const VertBitSet &validSamples, const std::vector< SkyPatch > &skyPatches, std::vector< MeshIntersectionResult > *outIntersections=nullptr) |
| Mesh | MR::makeSolidOfRevolution (const Contour2f &profile, int resolution=16) |
| template<typename C, typename D, D M> |
| SparsePolynomial< C, D, M > | MR::operator* (const SparsePolynomial< C, D, M > &a, const SparsePolynomial< C, D, M > &b) |
| | MR::SparsePolynomial< C, D, M >::SparsePolynomial ()=default |
| | constructs zero polynomial
|
| | MR::SparsePolynomial< C, D, M >::SparsePolynomial (std::map< D, C > &&) |
| | takes existing coefficients in ownership
|
| | MR::SparsePolynomial< C, D, M >::SparsePolynomial (C c0, D d1, C c1) |
| | constructs polynomial c0 + c1*x^d1
|
| | MR::SparsePolynomial< C, D, M >::SparsePolynomial (C c0, D d1, C c1, D d2, C c2) |
| | constructs polynomial c0 + c1*x^d1 + c2*x^d2
|
| void | MR::SparsePolynomial< C, D, M >::setZeroCoeff (D d) |
| | sets coefficient for given degree to zero
|
| bool | MR::SparsePolynomial< C, D, M >::empty () const |
| | returns true if no single polynomial coefficient is defined
|
| bool | MR::SparsePolynomial< C, D, M >::isPositive () const |
| | returns true if the coefficient for the smallest not-zero degress is positive
|
| const std::map< D, C > & | MR::SparsePolynomial< C, D, M >::get () const |
| | gets read-only access to all not-zero coefficients
|
| SparsePolynomial & | MR::SparsePolynomial< C, D, M >::operator+= (const SparsePolynomial &b) |
| SparsePolynomial & | MR::SparsePolynomial< C, D, M >::operator-= (const SparsePolynomial &b) |
| constexpr | MR::Sphere< V >::Sphere () noexcept=default |
| constexpr | MR::Sphere< V >::Sphere (const V &c, T r) noexcept |
| template<typename U> |
| | MR::Sphere< V >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< V, U >) const expr explicit Sphere(const Sphere< U > &l) noexcept |
| V | MR::Sphere< V >::project (const V &x) const |
| | finds the closest point on sphere
|
| T | MR::Sphere< V >::distance (const V &x) const |
| T | MR::Sphere< V >::distanceSq (const V &x) const |
| | returns squared distance from given point to this sphere
|
| | MR::SphereObject::SphereObject () |
| | Creates simple sphere object with center in zero and radius - 1.
|
| | MR::SphereObject::SphereObject (const std::vector< Vector3f > &pointsToApprox) |
| | Finds best sphere to approx given points.
|
| | MR::SphereObject::SphereObject (SphereObject &&) noexcept=default |
| SphereObject & | MR::SphereObject::operator= (SphereObject &&) noexcept=default |
| static constexpr const char * | MR::SphereObject::StaticTypeName () noexcept |
| virtual const char * | MR::SphereObject::typeName () const override |
| static constexpr const char * | MR::SphereObject::StaticClassName () noexcept |
| virtual std::string | MR::SphereObject::className () const override |
| static constexpr const char * | MR::SphereObject::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::SphereObject::classNameInPlural () const override |
| | MR::SphereObject::SphereObject (ProtectedStruct, const SphereObject &obj) |
| virtual std::shared_ptr< Object > | MR::SphereObject::clone () const override |
| virtual std::shared_ptr< Object > | MR::SphereObject::shallowClone () const override |
| float | MR::SphereObject::getRadius (ViewportId id={}) const |
| | calculates radius from xf
|
| Vector3f | MR::SphereObject::getCenter (ViewportId id={}) const |
| | calculates center from xf
|
| void | MR::SphereObject::setRadius (float radius, ViewportId id={}) |
| | updates xf to fit given radius
|
| void | MR::SphereObject::setCenter (const Vector3f ¢er, ViewportId id={}) |
| | updates xf to fit given center
|
| virtual const std::vector< FeatureObjectSharedProperty > & | MR::SphereObject::getAllSharedProperties () const override |
| | Create and generate list of bounded getters and setters for the main properties of feature object, together with prop. name for display and edit into UI.
|
| FeatureObjectProjectPointResult | MR::SphereObject::projectPoint (const Vector3f &point, ViewportId id={}) const override |
| | MR::SphereObject::SphereObject (const SphereObject &other)=default |
| virtual void | MR::SphereObject::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::SphereObject::serializeFields_ (Json::Value &root) const override |
| virtual Expected< std::future< Expected< void > > > | MR::SphereObject::serializeModel_ (const std::filesystem::path &) const override |
| virtual Expected< void > | MR::SphereObject::deserializeModel_ (const std::filesystem::path &, ProgressCallback) override |
| | Reads model from file.
|
| void | MR::SphereObject::setupRenderObject_ () const override |
| std::string | MR::getCurrentStacktraceInline () |
| void | MR::printStacktraceOnCrash () |
| | Print stacktrace on application crash.
|
| template<typename F> |
| bool | MR::split (std::string_view str, std::string_view sep, F &&func) |
| std::string | MR::replace (std::string target, std::string_view from, std::string_view to) |
| | Returns.
|
| void | MR::replaceInplace (std::string &target, std::string_view from, std::string_view to) |
| | Replaces.
|
| std::string_view | MR::trim (std::string_view str) |
| | Removes all whitespace character (detected by std::isspace) at the beginning and the end of string view.
|
| std::string_view | MR::trimLeft (std::string_view str) |
| | Removes all whitespace character (detected by std::isspace) at the beginning of string view.
|
| std::string_view | MR::trimRight (std::string_view str) |
| | Removes all whitespace character (detected by std::isspace) at the end of string view.
|
| bool | MR::hasFormatPlaceholders (std::string_view str) |
| | Returns true if str has at least one {...} formatting placeholder.
|
| Expected< Contours3f > | MR::offsetSurfaceLine (const Mesh &mesh, const std::vector< MeshTriPoint > &surfaceLine, float offset) |
| | Returns contours in mesh space that are offset from surfaceLine on offset amount in all directions.
|
| Expected< Contours3f > | MR::offsetSurfaceLine (const Mesh &mesh, const std::vector< MeshTriPoint > &surfaceLine, const std::function< float(int)> &offsetAtPoint) |
| | Returns contours in mesh space that are offset from surfaceLine on offsetAtPoint amount in all directions.
|
| constexpr | MR::SymMatrix2< T >::SymMatrix2 () noexcept=default |
| template<typename U> |
| | MR::SymMatrix2< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit SymMatrix2(const SymMatrix2< U > &m) |
| static constexpr SymMatrix2 | MR::SymMatrix2< T >::identity () noexcept |
| static constexpr SymMatrix2 | MR::SymMatrix2< T >::diagonal (T diagVal) noexcept |
| constexpr T | MR::SymMatrix2< T >::trace () const noexcept |
| | computes trace of the matrix
|
| constexpr T | MR::SymMatrix2< T >::normSq () const noexcept |
| | computes the squared norm of the matrix, which is equal to the sum of 4 squared elements
|
| constexpr T | MR::SymMatrix2< T >::det () const noexcept |
| | computes determinant of the matrix
|
| constexpr SymMatrix2< T > | MR::SymMatrix2< T >::inverse () const noexcept |
| | computes inverse matrix
|
| constexpr SymMatrix2< T > | MR::SymMatrix2< T >::inverse (T det) const noexcept |
| | computes inverse matrix given determinant of this
|
| SymMatrix2 & | MR::SymMatrix2< T >::operator+= (const SymMatrix2< T > &b) |
| SymMatrix2 & | MR::SymMatrix2< T >::operator-= (const SymMatrix2< T > &b) |
| SymMatrix2 & | MR::SymMatrix2< T >::operator*= (T b) |
| SymMatrix2 & | MR::SymMatrix2< T >::operator/= (T b) |
| constexpr | MR::SymMatrix3< T >::SymMatrix3 () noexcept=default |
| template<typename U> |
| | MR::SymMatrix3< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit SymMatrix3(const SymMatrix3< U > &m) |
| static constexpr SymMatrix3 | MR::SymMatrix3< T >::identity () noexcept |
| static constexpr SymMatrix3 | MR::SymMatrix3< T >::diagonal (T diagVal) noexcept |
| constexpr T | MR::SymMatrix3< T >::trace () const noexcept |
| | computes trace of the matrix
|
| constexpr T | MR::SymMatrix3< T >::normSq () const noexcept |
| | computes the squared norm of the matrix, which is equal to the sum of 9 squared elements
|
| constexpr T | MR::SymMatrix3< T >::det () const noexcept |
| | computes determinant of the matrix
|
| constexpr SymMatrix3< T > | MR::SymMatrix3< T >::inverse () const noexcept |
| | computes inverse matrix
|
| constexpr SymMatrix3< T > | MR::SymMatrix3< T >::inverse (T det) const noexcept |
| | computes inverse matrix given determinant of this
|
| SymMatrix3 & | MR::SymMatrix3< T >::operator+= (const SymMatrix3< T > &b) |
| SymMatrix3 & | MR::SymMatrix3< T >::operator-= (const SymMatrix3< T > &b) |
| SymMatrix3 & | MR::SymMatrix3< T >::operator*= (T b) |
| SymMatrix3 & | MR::SymMatrix3< T >::operator/= (T b) |
| constexpr | MR::SymMatrix4< T >::SymMatrix4 () noexcept=default |
| template<typename U> |
| constexpr | MR::SymMatrix4< T >::SymMatrix4 (const SymMatrix4< U > &m) |
| static constexpr SymMatrix4 | MR::SymMatrix4< T >::identity () noexcept |
| static constexpr SymMatrix4 | MR::SymMatrix4< T >::diagonal (T diagVal) noexcept |
| constexpr T | MR::SymMatrix4< T >::trace () const noexcept |
| | computes trace of the matrix
|
| constexpr T | MR::SymMatrix4< T >::normSq () const noexcept |
| | computes the squared norm of the matrix, which is equal to the sum of 16 squared elements
|
| SymMatrix4 & | MR::SymMatrix4< T >::operator+= (const SymMatrix4< T > &b) |
| SymMatrix4 & | MR::SymMatrix4< T >::operator-= (const SymMatrix4< T > &b) |
| SymMatrix4 & | MR::SymMatrix4< T >::operator*= (T b) |
| SymMatrix4 & | MR::SymMatrix4< T >::operator/= (T b) |
| bool | MR::SymMatrix4< T >::operator== (const SymMatrix4< T > &) const =default |
| void | MR::SetCurrentThreadName (const char *name) |
| | sets debug name for the current thread
|
| MR_BIND_IGNORE std::filesystem::path | MR::GetExeDirectory () |
| | returns path of current exe directory
|
| MR_BIND_IGNORE std::filesystem::path | MR::GetResourcesDirectory () |
| MR_BIND_IGNORE std::filesystem::path | MR::GetFontsDirectory () |
| MR_BIND_IGNORE std::filesystem::path | MR::GetLibsDirectory () |
| MR_BIND_IGNORE std::filesystem::path | MR::GetEmbeddedPythonDirectory () |
| std::filesystem::path | MR::getUserConfigDir () |
| | return path to the folder with user config file(s)
|
| std::filesystem::path | MR::getUserConfigFilePath () |
| | returns path of config file in APPDATA
|
| std::filesystem::path | MR::GetTempDirectory () |
| | returns temp directory
|
| std::filesystem::path | MR::GetHomeDirectory () |
| | returns home directory
|
| const char * | MR::GetMRVersionString () |
| | _WIN32
|
| void | MR::OpenLink (const std::string &url) |
| | Opens given link in default browser.
|
| bool | MR::OpenDocument (const std::filesystem::path &path) |
| | Opens given file (or directory) in associated application.
|
| std::string | MR::GetCpuId () |
| | returns string identification of the CPU
|
| std::string | MR::GetDetailedOSName () |
| | returns string with OS name with details
|
| std::string | MR::getOSNoSpaces () |
| | returns string identification of the OS
|
| void | MR::setNewHandlerIfNeeded () |
| | sets new handler for operator new if needed for some platforms
|
| std::string | MR::getCurrentStacktrace () |
| | returns string representation of the current stacktrace
|
| SystemMemory | MR::getSystemMemory () |
| | return information about memory available in the system
|
| void | MR::setupLoggerByDefault (const std::function< void()> &customLogSinkAdder={}) |
| | _WIN32
|
| static const Expected< std::filesystem::path > & | MR::SystemPath::getExecutablePath () |
| | get the current executable's file path
|
| static const Expected< std::filesystem::path > & | MR::SystemPath::getLibraryPath () |
| | get the MRMesh binary's file path
|
| static Expected< std::filesystem::path > | MR::SystemPath::getLibraryPathForSymbol (const void *symbol) |
| static Expected< std::filesystem::path > | MR::SystemPath::getExecutableDirectory () |
| | get the current executable's directory path
|
| static Expected< std::filesystem::path > | MR::SystemPath::getLibraryDirectory () |
| | get the MRMesh binary's directory path
|
| static std::filesystem::path | MR::SystemPath::getDirectory (Directory dir) |
| | get the directory path for specified category
|
| static void | MR::SystemPath::overrideDirectory (Directory dir, const std::filesystem::path &path) |
| | override the directory path for specified category, useful for custom configurations
|
| static std::filesystem::path | MR::SystemPath::getResourcesDirectory () |
| | get the resource files' directory path
|
| static std::filesystem::path | MR::SystemPath::getFontsDirectory () |
| | get the font files' directory path
|
| static std::filesystem::path | MR::SystemPath::getPluginsDirectory () |
| | get the plugin binaries' directory path
|
| static std::filesystem::path | MR::SystemPath::getPythonModulesDirectory () |
| | get the Python modules' binaries' directory path
|
| static const std::vector< SystemFontPaths > & | MR::SystemPath::getSystemFonts () |
| | get name all system fonts that have italics, bold, bold italics
|
| template<typename F> |
| void | MR::TbbTaskArenaAndGroup::execute (F &&f) |
| | runs given function within this task group and task arena
|
| void | MR::TbbTaskArenaAndGroup::wait () |
| | MR::TbbThreadMutex::TbbThreadMutex (std::thread::id id=std::this_thread::get_id()) |
| | MR::TbbThreadMutex::LockGuard::LockGuard (const LockGuard &)=delete |
| | MR::TbbThreadMutex::LockGuard::LockGuard (LockGuard &&other) |
| | MR::TbbThreadMutex::LockGuard::~LockGuard () |
| std::optional< LockGuard > | MR::TbbThreadMutex::tryLock () |
| int | MR::intLog2 (size_t n) |
| Expected< Mesh > | MR::terrainTriangulation (std::vector< Vector3f > points, ProgressCallback cb={}) |
| std::optional< UVCoord > | MR::findVertexUV (const MeshTopology &topology, VertId v, const TriCornerUVCoords &triCornerUvCoords) |
| std::optional< VertUVCoords > | MR::findVertexUVs (const MeshTopology &topology, const TriCornerUVCoords &triCornerUvCoords) |
| Color | MR::sampleVertexColor (const Mesh &mesh, VertId v, const MeshTexture &tex, const TriCornerUVCoords &triCornerUvCoords) |
| VertColors | MR::sampleVertexColors (const Mesh &mesh, const MeshTexture &tex, const TriCornerUVCoords &triCornerUvCoords) |
| bool | MR::BaseTiffParameters::operator== (const BaseTiffParameters &) const =default |
| bool | MR::TiffParameters::operator== (const TiffParameters &) const =default |
| bool | MR::isTIFFFile (const std::filesystem::path &path) |
| | returns true if given file is tiff
|
| Expected< TiffParameters > | MR::readTiffParameters (const std::filesystem::path &path) |
| | reads parameters of tiff file
|
| Expected< void > | MR::readRawTiff (const std::filesystem::path &path, RawTiffOutput &output) |
| | load values from tiff to ouput.data
|
| Expected< void > | MR::writeRawTiff (const uint8_t *bytes, const std::filesystem::path &path, const WriteRawTiffParams ¶ms) |
| | writes bytes to tiff file
|
| Expected< void > | MR::writeRawTiff (const uint8_t *bytes, const std::filesystem::path &path, const BaseTiffParameters ¶ms, const AffineXf3f *xf) |
| Mesh | MR::makeTorus (float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr) |
| Mesh | MR::makeOuterHalfTorus (float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr) |
| Mesh | MR::makeTorusWithUndercut (float primaryRadius=1.0f, float secondaryRadiusInner=0.1f, float secondaryRadiusOuter=0.2f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr) |
| Mesh | MR::makeTorusWithSpikes (float primaryRadius=1.0f, float secondaryRadiusInner=0.1f, float secondaryRadiusOuter=0.5f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr) |
| Mesh | MR::makeTorusWithComponents (float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr) |
| Mesh | MR::makeTorusWithSelfIntersections (float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr) |
| bool | MR::TriTriDistanceParams< T >::canExitEarlier () const |
| | with the current parameters
|
| bool | MR::TriTriDistanceParams< T >::canExitEarlier (T distSqLowerBound) const |
| | with this particular lower bound
|
| TriTriDistanceResultf | MR::findTriTriDistance (const Triangle3f &a, const Triangle3f &b, const TriTriDistanceParamsf ¶ms={}) |
| | computes the closest points on two triangles
|
| TriTriDistanceResultd | MR::findTriTriDistance (const Triangle3d &a, const Triangle3d &b, const TriTriDistanceParamsd ¶ms={}) |
| MR_BIND_IGNORE float | MR::triDist (Vector3f &p, Vector3f &q, const Vector3f s[3], const Vector3f t[3]) |
| | This version is not in the bindings, because the pointer parameters are assumed to point to single objects, which is wrong here.
|
| float | MR::triDist (Vector3f &p, Vector3f &q, const std::array< Vector3f, 3 > &s, const std::array< Vector3f, 3 > &t) |
| void | MR::segPoints (Vector3f &VEC, Vector3f &X, Vector3f &Y, const Vector3f &P, const Vector3f &A, const Vector3f &Q, const Vector3f &B) |
| template<typename T> |
| Vector3< T > | MR::circumcircleCenter (const Vector3< T > &a, const Vector3< T > &b) |
| | Computes the center of the the triangle's 0AB circumcircle.
|
| template<typename T> |
| Vector3< T > | MR::circumcircleCenter (const Vector3< T > &a, const Vector3< T > &b, const Vector3< T > &c) |
| | Computes the center of the the triangle's ABC circumcircle.
|
| template<typename T> |
| bool | MR::circumballCenters (const Vector3< T > &a, const Vector3< T > &b, const Vector3< T > &c, T radius, Vector3< T > ¢erPos, Vector3< T > ¢erNeg) |
| | ball's center from the negative side of triangle
|
| template<typename T> |
| T | MR::minTriangleAngle (const Vector3< T > &a, const Vector3< T > &b, const Vector3< T > &c) |
| template<typename T> |
| Vector3< T > | MR::dirDblArea (const Triangle3< T > &t) |
| | computes directed double area of given triangle
|
| template<typename T> |
| Vector3< T > | MR::dirDblArea (const Vector3< T > &q, const Vector3< T > &r) |
| | computes directed double area of triangle 0QR
|
| template<typename T> |
| Vector3< T > | MR::dirDblArea (const Vector3< T > &p, const Vector3< T > &q, const Vector3< T > &r) |
| | computes directed double area of triangle PQR
|
| template<typename T> |
| Vector3< T > | MR::normal (const Vector3< T > &q, const Vector3< T > &r) |
| | computes unit normal of triangle 0QR
|
| template<typename T> |
| Vector3< T > | MR::normal (const Vector3< T > &p, const Vector3< T > &q, const Vector3< T > &r) |
| | computes unit normal of triangle PQR
|
| template<typename T> |
| Vector3< T > | MR::normal (const Triangle3< T > &t) |
| | computes unit normal of the given triangle
|
| template<typename T> |
| T | MR::dblAreaSq (const Vector3< T > &p, const Vector3< T > &q, const Vector3< T > &r) |
| | computes the square of double area of given triangle
|
| template<typename T> |
| T | MR::dblArea (const Triangle3< T > &t) |
| | computes twice the area of given triangle
|
| template<typename T> |
| T | MR::dblArea (const Vector3< T > &p, const Vector3< T > &q, const Vector3< T > &r) |
| | computes twice the area of given triangle
|
| template<typename T> |
| T | MR::area (const Vector3< T > &p, const Vector3< T > &q, const Vector3< T > &r) |
| | computes twice the area of given triangle
|
| template<typename T> |
| T | MR::dblArea (const Vector2< T > &p, const Vector2< T > &q, const Vector2< T > &r) |
| | computes twice the area of given triangle
|
| template<typename T> |
| T | MR::area (const Vector2< T > &p, const Vector2< T > &q, const Vector2< T > &r) |
| | computes twice the area of given triangle
|
| template<typename T> |
| Triangle3< T > | MR::makeDegenerate (const Triangle3< T > &t) |
| | make degenerate triangle (all 3 points on a line) that maximally resembles the input one and has the same centroid
|
| template<typename T> |
| Triangle3< T > | MR::triangleWithNormal (const Triangle3< T > &t, const Vector3< T > &n) |
| template<typename T> |
| std::optional< Vector2< T > > | MR::posFromTriEdgeLengths (T a, T b, T c) |
| template<typename T> |
| std::optional< T > | MR::quadrangleOtherDiagonal (T a, T b, T c, T a1, T b1) |
| template<typename T> |
| T | MR::tanSqOfHalfAngle (T a, T b, T c) |
| template<typename T> |
| T | MR::cotan (const Triangle3< T > &t, T absMaxVal=std::numeric_limits< T >::max()) |
| template<typename T> |
| T | MR::cotan (T a, T b, T c) |
| template<typename T> |
| std::optional< Vector3< T > > | MR::gradientInTri (const Vector3< T > &b, const Vector3< T > &c, T vb, T vc) |
| template<typename T> |
| std::optional< Vector3< T > > | MR::gradientInTri (const Vector3< T > &a, const Vector3< T > &b, const Vector3< T > &c, T va, T vb, T vc) |
| template<typename T> |
| std::optional< T > | MR::findTriExitPos (const Vector3< T > &b, const Vector3< T > &c, const Vector3< T > &grad) |
| template<typename T> |
| std::optional< Vector3< T > > | MR::tangentPlaneNormalToSpheres (const Vector3< T > &b, const Vector3< T > &c, T rb, T rc) |
| template<typename T> |
| std::optional< Plane3< T > > | MR::tangentPlaneToSpheres (const Vector3< T > &a, const Vector3< T > &b, const Vector3< T > &c, T ra, T rb, T rc) |
| | MR::FaceFaceFace::FaceFaceFace (FaceId a, FaceId b, FaceId c) |
| | MR::FaceFaceFace::FaceFaceFace () |
| auto | MR::FaceFaceFace::operator<=> (const FaceFaceFace &rhs) const =default |
| std::vector< FaceFaceFace > | MR::findTripleFaceIntersections (const MeshTopology &topology, const ContinuousContours &selfContours) |
| constexpr | MR::TriPoint< T >::TriPoint () noexcept |
| | MR::TriPoint< T >::TriPoint (NoInit) noexcept |
| constexpr | MR::TriPoint< T >::TriPoint (T a, T b) noexcept |
| template<typename U> |
| | MR::TriPoint< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr TriPoint(const TriPoint< U > &s) |
| | The condition is needed for the bindings to not duplicate this ctor against the copy ctor.
|
| | MR::TriPoint< T >::TriPoint (const Vector3< T > &p, const Vector3< T > &v0, const Vector3< T > &v1, const Vector3< T > &v2) |
| | given a point coordinates and triangle (v0,v1,v2) computes barycentric coordinates of the point
|
| | MR::TriPoint< T >::TriPoint (const Vector3< T > &p, const Vector3< T > &v1, const Vector3< T > &v2) |
| | given a point coordinates and triangle (0,v1,v2) computes barycentric coordinates of the point
|
| template<typename U> |
| U | MR::TriPoint< T >::interpolate (const U &v0, const U &v1, const U &v2) const |
| | given three values in three vertices, computes interpolated value at this barycentric coordinates
|
| TriPoint | MR::TriPoint< T >::lnext () const |
| | represents the same point relative to next edge in the same triangle
|
| constexpr int | MR::TriPoint< T >::inVertex () const |
| | returns [0,2] if the point is in a vertex or -1 otherwise
|
| constexpr int | MR::TriPoint< T >::onEdge () const |
| constexpr bool | MR::TriPoint< T >::operator== (const TriPoint &rhs) const =default |
| | returns true if two points have equal (a,b) representation
|
| TwoLineSegmClosestPointsf | MR::findTwoLineSegmClosestPoints (const LineSegm3f &a, const LineSegm3f &b) |
| | computes the closest points on two line segments
|
| TwoLineSegmClosestPointsd | MR::findTwoLineSegmClosestPoints (const LineSegm3d &a, const LineSegm3d &b) |
| | MR::UnionFind< I >::UnionFind ()=default |
| | MR::UnionFind< I >::UnionFind (size_t size) |
| | creates union-find with given number of elements, each element is the only one in its disjoint set
|
| auto | MR::UnionFind< I >::size () const |
| | returns the number of elements in union-find
|
| void | MR::UnionFind< I >::reset (size_t size) |
| | resets union-find to represent given number of elements, each element is the only one in its disjoint set
|
| std::pair< I, bool > | MR::UnionFind< I >::unite (I first, I second) |
| bool | MR::UnionFind< I >::united (I first, I second) |
| | returns true if given two elements are from one set
|
| bool | MR::UnionFind< I >::isRoot (I a) const |
| | returns true if given element is the root of some set
|
| I | MR::UnionFind< I >::parent (I a) const |
| | return parent element of this element, which is equal to given element only for set's root
|
| I | MR::UnionFind< I >::find (I a) |
| | finds the root of the set containing given element with optimizing data structure updates
|
| I | MR::UnionFind< I >::findUpdateRange (I a, I begin, I end) |
| | finds the root of the set containing given element with optimizing data structure in the range [begin, end)
|
| const Vector< I, I > & | MR::UnionFind< I >::roots () |
| | sets the root of corresponding set as the parent of each element, then returns the vector
|
| const Vector< I, I > & | MR::UnionFind< I >::parents () const |
| | gets the parents of all elements as is
|
| SizeType | MR::UnionFind< I >::sizeOfComp (I a) |
| | returns the number of elements in the set containing given element
|
| template<typename I> |
| TypedBitSet< I > | MR::findRootsBitSet (const UnionFind< I > &uf, const TypedBitSet< I > *region=nullptr) |
| template<typename I> |
| TypedBitSet< I > | MR::findComponentBitSet (UnionFind< I > &uf, I a, const TypedBitSet< I > *region=nullptr) |
| | MR::UniquePtr< T >::UniquePtr () noexcept=default |
| | MR::UniquePtr< T >::UniquePtr (const UniquePtr &) noexcept |
| | MR::UniquePtr< T >::UniquePtr (UniquePtr &&) noexcept=default |
| UniquePtr & | MR::UniquePtr< T >::operator= (const UniquePtr &) noexcept |
| UniquePtr & | MR::UniquePtr< T >::operator= (UniquePtr &&) noexcept=default |
| UniquePtr & | MR::UniquePtr< T >::operator= (std::unique_ptr< T > &&b) noexcept |
| | MR::UniqueTemporaryFolder::UniqueTemporaryFolder (FolderCallback onPreTempFolderDelete={}) |
| | creates new folder in temp directory
|
| | MR::UniqueTemporaryFolder::~UniqueTemporaryFolder () |
| | removes folder with all its content
|
| | MR::UniqueTemporaryFolder::operator bool () const |
| std::filesystem::path | MR::UniqueTemporaryFolder::operator/ (const std::filesystem::path &child) const |
| Expected< Mesh > | MR::uniteManyMeshes (const std::vector< const Mesh * > &meshes, const UniteManyMeshesParams ¶ms={}) |
| template<UnitEnum E> |
| const UnitInfo & | MR::getUnitInfo (E unit)=delete |
| | Returns information about a single measurement unit.
|
| template<UnitEnum E> |
| bool | MR::unitsAreEquivalent (E a, E b) |
| | Returns true if converting a value between units a and b doesn't change its value.
|
| template<UnitEnum E> |
| bool | MR::unitsAreEquivalent (const std::optional< E > &a, const std::optional< E > &b) |
| | This version also returns true if a or b is null.
|
| template<UnitEnum E, typename T> |
| detail::Units::MakeFloatingPoint< T > | MR::convertUnits (E from, E to, const T &value) |
| template<UnitEnum E, typename T> |
| detail::Units::MakeFloatingPoint< T > | MR::convertUnits (const std::optional< E > &from, const std::optional< E > &to, const T &value) |
| | This version is a no-op if from or to is null.
|
| | MR::UnorientedTriangle::UnorientedTriangle (const ThreeVertIds &inVs, bool *outFlipped=nullptr) |
| ThreeVertIds | MR::UnorientedTriangle::getFlipped () const |
| | returns this triangle with the opposite orientation
|
| | MR::UnorientedTriangle::operator ThreeVertIds & () |
| | id #0 remains the lowest
|
| | MR::UnorientedTriangle::operator const ThreeVertIds & () const |
| VertId & | MR::UnorientedTriangle::operator[] (std::size_t i) |
| const VertId & | MR::UnorientedTriangle::operator[] (std::size_t i) const |
| | MR::Vector< T, I >::Vector ()=default |
| | creates empty vector
|
| | MR::Vector< T, I >::Vector (size_t size) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| | creates a vector with size elements with default value
|
| | MR::Vector< T, I >::Vector (size_t size, const T &val) |
| | creates a vector with size elements with the given value
|
| | MR::Vector< T, I >::Vector (std::vector< T > &&vec) |
| | moves data from the given std::vector<T>
|
| template<class InputIt> |
| | MR::Vector< T, I >::Vector (InputIt first, InputIt last) |
| | MR::Vector< T, I >::Vector (std::initializer_list< T > init) |
| bool | MR::Vector< T, I >::operator== (const Vector &b) const MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| bool | MR::Vector< T, I >::operator!= (const Vector &b) const MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| void | MR::Vector< T, I >::clear () |
| bool | MR::Vector< T, I >::empty () const |
| std::size_t | MR::Vector< T, I >::size () const |
| void | MR::Vector< T, I >::resize (size_t newSize) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| void | MR::Vector< T, I >::resize (size_t newSize, const T &t) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| void | MR::Vector< T, I >::resizeNoInit (size_t targetSize) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| | resizes the vector skipping initialization of its elements (more precisely initializing them using ( noInit ) constructor )
|
| std::size_t | MR::Vector< T, I >::capacity () const |
| void | MR::Vector< T, I >::reserve (size_t capacity) |
| const_reference | MR::Vector< T, I >::operator[] (I i) const MR_LIFETIMEBOUND |
| reference | MR::Vector< T, I >::operator[] (I i) MR_LIFETIMEBOUND |
| void | MR::Vector< T, I >::resizeWithReserve (size_t newSize) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| | doubles reserved memory until resize(newSize) can be done without reallocation
|
| void | MR::Vector< T, I >::resizeWithReserve (size_t newSize, const T &value) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| | doubles reserved memory until resize(newSize, value) can be done without reallocation
|
| void | MR::Vector< T, I >::autoResizeSet (I pos, size_t len, T val) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| void | MR::Vector< T, I >::autoResizeSet (I i, T val) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| | sets the element #i to the given value, adjusting the size of the vector to include new element
|
| reference | MR::Vector< T, I >::autoResizeAt (I i) MR_REQUIRES_IF_SUPPORTED(sizeof(T)>0 &&std |
| | this accessor automatically adjusts the size of the vector
|
| void | MR::Vector< T, I >::push_back (const T &t MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| void | MR::Vector< T, I >::push_back (T &&t MR_LIFETIME_CAPTURE_BY_NESTED(this)) |
| void | MR::Vector< T, I >::pop_back () |
| template<typename... Args> |
| | MR::Vector< T, I >::MR_REQUIRES_IF_SUPPORTED (sizeof(T)>0 &&std::constructible_from< T, Args &&... >) T &emplace_back(Args &&... args) |
| const_reference | MR::Vector< T, I >::front () const MR_LIFETIMEBOUND |
| reference | MR::Vector< T, I >::front () MR_LIFETIMEBOUND |
| const_reference | MR::Vector< T, I >::back () const MR_LIFETIMEBOUND |
| reference | MR::Vector< T, I >::back () MR_LIFETIMEBOUND |
| I | MR::Vector< T, I >::beginId () const |
| | returns the identifier of the first element
|
| I | MR::Vector< T, I >::backId () const |
| | returns the identifier of the back() element
|
| I | MR::Vector< T, I >::endId () const |
| | returns backId() + 1
|
| T * | MR::Vector< T, I >::data () MR_LIFETIMEBOUND |
| const T * | MR::Vector< T, I >::data () const MR_LIFETIMEBOUND |
| void | MR::Vector< T, I >::swap (Vector &b) |
| size_t | MR::Vector< T, I >::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| template<typename T> |
| T | MR::getAt (const std::vector< T > &a, size_t id, T def={}) |
| | given some std::vector and a key, returns the value associated with the key, or default value if key is invalid or outside the std::vector
|
| template<typename T, typename I> |
| T | MR::getAt (const Vector< T, I > &a, I id, T def={}) |
| | given some Vector and a key, returns the value associated with the key, or default value if key is invalid or outside the Vector
|
| constexpr | MR::Vector3< T >::Vector3 () noexcept |
| | MR::Vector3< T >::Vector3 (NoInit) noexcept |
| constexpr | MR::Vector3< T >::Vector3 (T x, T y, T z) noexcept |
| template<typename U> |
| | MR::Vector3< T >::MR_REQUIRES_IF_SUPPORTED (std::constructible_from< T, U >) explicit const expr Vector3(const Vector2< U > &v) noexcept |
| static constexpr Vector3 | MR::Vector3< T >::diagonal (T a) noexcept |
| static constexpr Vector3 | MR::Vector3< T >::plusX () noexcept |
| static constexpr Vector3 | MR::Vector3< T >::plusY () noexcept |
| static constexpr Vector3 | MR::Vector3< T >::plusZ () noexcept |
| static constexpr Vector3 | MR::Vector3< T >::minusX () noexcept MR_REQUIRES_IF_SUPPORTED(!std |
| static constexpr Vector3 | MR::Vector3< T >::minusY () noexcept MR_REQUIRES_IF_SUPPORTED(!std |
| static constexpr Vector3 | MR::Vector3< T >::minusZ () noexcept MR_REQUIRES_IF_SUPPORTED(!std |
| template<typename U> |
| | MR::Vector3< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit Vector3(const Vector3< U > &v) noexcept |
| constexpr const T & | MR::Vector3< T >::operator[] (int e) const noexcept |
| constexpr T & | MR::Vector3< T >::operator[] (int e) noexcept |
| T | MR::Vector3< T >::lengthSq () const |
| auto | MR::Vector3< T >::length () const |
| Vector3 | MR::Vector3< T >::normalized () const MR_REQUIRES_IF_SUPPORTED(std |
| template<MR_SAME_TYPE_TEMPLATE_PARAM(T, TT)> |
| Vector3 furthestBasisVector() const MR_REQUIRES_IF_SUPPORTED(!std std::pair< Vector3, Vector3 > perpendicular() const MR_REQUIRES_IF_SUPPORTED(std Vector3 | MR::Vector3< T >::transformed (const AffineXf3< TT > *xf) const MR_REQUIRES_IF_SUPPORTED(std |
| | returns one of 3 basis unit vector that makes the biggest angle with the direction specified by this
|
| void | MR::Vector3< T >::unsignZeroValues () MR_REQUIRES_IF_SUPPORTED(std |
| | get rid of signed zero values to be sure that equal vectors have identical binary representation
|
| bool | MR::Vector3< T >::isFinite () const MR_REQUIRES_IF_SUPPORTED(std |
| constexpr | MR::Vector4< T >::Vector4 () noexcept |
| | MR::Vector4< T >::Vector4 (NoInit) noexcept |
| constexpr | MR::Vector4< T >::Vector4 (T x, T y, T z, T w) noexcept |
| static constexpr Vector4 | MR::Vector4< T >::diagonal (T a) noexcept |
| template<typename U> |
| | MR::Vector4< T >::MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit Vector4(const Vector4< U > &v) noexcept |
| constexpr const T & | MR::Vector4< T >::operator[] (int e) const noexcept |
| constexpr T & | MR::Vector4< T >::operator[] (int e) noexcept |
| T | MR::Vector4< T >::lengthSq () const |
| auto | MR::Vector4< T >::length () const |
| Vector4 | MR::Vector4< T >::normalized () const MR_REQUIRES_IF_SUPPORTED(!std |
| Vector3< T > | MR::Vector4< T >::proj3d () const MR_REQUIRES_IF_SUPPORTED(!std |
| | assuming this is a point represented in homogeneous 4D coordinates, returns the point as 3D-vector
|
| bool | MR::Vector4< T >::isFinite () const MR_REQUIRES_IF_SUPPORTED(std |
| template<typename U> |
| static constexpr auto && | MR::VectorTraits< T >::getElem (int i, U &&value) |
| template<typename U = T> |
| static constexpr U | MR::VectorTraits< T >::diagonal (U v) |
| | Adding a template parameter to allow instantiating the rest of the class with T == void.
|
| template<typename U> |
| static auto && | MR::VectorTraits< Vector2< T > >::getElem (int i, U &&value) |
| static constexpr auto | MR::VectorTraits< Vector2< T > >::diagonal (T v) |
| template<typename U> |
| static auto && | MR::VectorTraits< Vector3< T > >::getElem (int i, U &&value) |
| static constexpr auto | MR::VectorTraits< Vector3< T > >::diagonal (T v) |
| template<typename U> |
| static auto && | MR::VectorTraits< Vector4< T > >::getElem (int i, U &&value) |
| static constexpr auto | MR::VectorTraits< Vector4< T > >::diagonal (T v) |
| | MR::VersatileChangeMeshPointsAction::VersatileChangeMeshPointsAction (std::string name, const std::shared_ptr< ObjectMesh > &obj) |
| | use this constructor to remember object's mesh points in uncompressed format before making any changes in it
|
| | MR::VersatileChangeMeshPointsAction::~VersatileChangeMeshPointsAction () |
| virtual std::string | MR::VersatileChangeMeshPointsAction::name () const override |
| virtual void | MR::VersatileChangeMeshPointsAction::action (HistoryAction::Type t) override |
| | This function is called on history action (undo, redo, etc.)
|
| static void | MR::VersatileChangeMeshPointsAction::setObjectDirty (const std::shared_ptr< ObjectMesh > &obj) |
| virtual size_t | MR::VersatileChangeMeshPointsAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| void | MR::VersatileChangeMeshPointsAction::compress () |
| | switch from uncompressed to compressed format to occupy less amount of memory
|
| | MR::VertCoordsDiff::VertCoordsDiff ()=default |
| | constructs minimal difference, where applyAndSwap( v ) will produce empty vector
|
| | MR::VertCoordsDiff::VertCoordsDiff (const VertCoords &from, const VertCoords &to) |
| | computes the difference, that can be applied to vector-from in order to get vector-to
|
| void | MR::VertCoordsDiff::applyAndSwap (VertCoords &m) |
| bool | MR::VertCoordsDiff::any () const |
| size_t | MR::VertCoordsDiff::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| | MR::WatershedGraph::BasinInfo::BasinInfo () |
| float | MR::WatershedGraph::BasinInfo::amountTillOverflow () const |
| | Apparently I need this for MR::Vector to register default-constructibility inside the enclosing class.
|
| float | MR::WatershedGraph::BasinInfo::approxLevel () const |
| | approximate current level of water (z-coordinate) in the basin
|
| void | MR::WatershedGraph::BasinInfo::updateAccVolume (float amount) |
| | updates accumulated volume in the basin to the moment of given precipitation amount
|
| | MR::WatershedGraph::WatershedGraph (const Mesh &mesh, const Vector< int, FaceId > &face2basin, int numBasins) |
| | constructs the graph from given mesh, heights in z-coordinate, and initial subdivision on basins
|
| float | MR::WatershedGraph::getHeightAt (VertId v) const |
| | returns height at given vertex or FLT_MAX if the vertex is invalid
|
| const Graph & | MR::WatershedGraph::graph () const |
| | returns underlying graph where each basin is a vertex
|
| float | MR::WatershedGraph::totalArea () const |
| | returns total precipitation area
|
| int | MR::WatershedGraph::numBasins () const |
| | returns the current number of basins (excluding special "outside" basin)
|
| const BasinInfo & | MR::WatershedGraph::basinInfo (Graph::VertId v) const |
| | returns data associated with given basin
|
| BasinInfo & | MR::WatershedGraph::basinInfo (Graph::VertId v) |
| const BdInfo & | MR::WatershedGraph::bdInfo (Graph::EdgeId e) const |
| | returns data associated with given boundary between basins
|
| BdInfo & | MR::WatershedGraph::bdInfo (Graph::EdgeId e) |
| Graph::VertId | MR::WatershedGraph::outsideId () const |
| | returns special "basin" representing outside areas of the mesh
|
| Graph::VertId | MR::WatershedGraph::getRootBasin (Graph::VertId v) const |
| | for valid basin returns self id; for invalid basin returns the id of basin it was merged in
|
| Graph::VertId | MR::WatershedGraph::flowsTo (Graph::VertId v) const |
| | returns the basin where the flow from this basin goes next (it can be self id if the basin is not full yet)
|
| Graph::VertId | MR::WatershedGraph::flowsFinallyTo (Graph::VertId v, bool exceptOutside=false) const |
| void | MR::WatershedGraph::setParentsToRoots () |
| std::pair< Graph::EdgeId, float > | MR::WatershedGraph::findLowestBd () const |
| Graph::VertId | MR::WatershedGraph::merge (Graph::VertId v0, Graph::VertId v1) |
| | merges basin v1 into basin v0, v1 is deleted after that, returns v0
|
| Graph::VertId | MR::WatershedGraph::mergeViaBd (Graph::EdgeId bd) |
| | merges two basins sharing given boundary, returns remaining basin
|
| FaceBitSet | MR::WatershedGraph::getBasinFaces (Graph::VertId basin) const |
| | returns the mesh faces of given basin
|
| Vector< FaceBitSet, Graph::VertId > | MR::WatershedGraph::getAllBasinFaces (bool joinOverflowBasins=false) const |
| FaceBitSet | MR::WatershedGraph::getBasinFacesBelowLevel (Graph::VertId basin, float waterLevel) const |
| | returns the mesh faces of given basin with at least one vertex below given level
|
| double | MR::WatershedGraph::computeBasinVolume (Graph::VertId basin, float waterLevel) const |
| UndirectedEdgeBitSet | MR::WatershedGraph::getInterBasinEdges (bool joinOverflowBasins=false) const |
| std::vector< OverflowPoint > | MR::WatershedGraph::getOverflowPoints () const |
| | returns all overflow points in the graph
|
| Vector< Graph::VertId, Graph::VertId > | MR::WatershedGraph::iniBasin2Tgt (bool joinOverflowBasins=false) const |
| | MR::Writer< T >::Writer (T &o) |
| | MR::Writer< T >::~Writer () |
| const std::optional< T > & | MR::XfBasedCache< T >::get (const AffineXf3f &xf) const |
| | returns stored object only if requested transformation is the same as stored one
|
| void | MR::XfBasedCache< T >::set (const AffineXf3f &xf, T t) |
| | sets new transformation and the object
|
| void | MR::XfBasedCache< T >::reset () |
| | clears stored object
|
| static MRPYTHON_API PythonExport & | MR::PythonExport::instance () |
| void | MR::PythonExport::addFunc (const std::string &moduleName, PythonRegisterFuncton func, Priority priority) |
| void | MR::PythonExport::setInitFuncPtr (const std::string &moduleName, PyObject *(*initFncPointer)(void)) |
| const std::array< std::vector< PythonRegisterFuncton >, size_t(Priority::Count)> & | MR::PythonExport::functions (const std::string &moduleName) const |
| const std::unordered_map< std::string, ModuleData > & | MR::PythonExport::modules () const |
| MRPYTHON_API | MR::PythonFunctionAdder::PythonFunctionAdder (const std::string &moduleName, std::function< void(pybind11::module_ &m)> func, PythonExport::Priority priority=PythonExport::Priority::Implementation) |
| MRPYTHON_API | MR::PythonFunctionAdder::PythonFunctionAdder (const std::string &moduleName, PyObject *(*initFncPointer)(void)) |
| template<typename E> |
| void | MR::throwExceptionFromExpected (const E &err) |
| | overload toString functoion to throw exception from custom Expected::error type
|
| template<typename T> |
| decltype(auto) | MR::expectedValueOrThrow (T &&e) |
| | Like e.value(), but throws using throwExceptionFromExpected (which is better, because it allows Python to see the proper error message), and also supports T == void.
|
| template<typename R, typename E, typename... Args> |
| auto | MR::decorateExpected (std::function< Expected< R, E >(Args...)> &&f) -> std::function< R(Args...)> |
| template<typename F> |
| auto | MR::decorateExpected (F &&f) |
| template<typename R, typename T, typename... Args> |
| auto | MR::decorateExpected (R(T::*memFunction)(Args...)) |
| static MRPYTHON_API std::stringstream & | MR::UnifiedPythonStream::get () |
| Expected< Mesh > | MR::alignTextToMesh (const Mesh &mesh, const TextMeshAlignParams ¶ms) |
| | Creates symbol mesh and aligns it to given surface.
|
| Expected< Mesh > | MR::bendTextAlongCurve (const CurveFunc &curve, const BendTextAlongCurveParams ¶ms) |
| Expected< Mesh > | MR::bendTextAlongCurve (const CurvePoints &curve, const BendTextAlongCurveParams ¶ms) |
| | Creates symbol mesh and deforms it along given curve.
|
| Expected< Mesh > | MR::bendTextAlongSurfacePath (const Mesh &mesh, const GeodesicPath &path, const BendTextAlongCurveParams ¶ms) |
| | Creates symbol mesh and deforms it along given surface path: start->path->end.
|
| Expected< Mesh > | MR::bendTextAlongSurfacePath (const Mesh &mesh, const SurfacePath &path, const BendTextAlongCurveParams ¶ms) |
| | Creates symbol mesh and deforms it along given surface path.
|
| | MR::ChangeLabelAction::ChangeLabelAction (const std::string &actionName, std::shared_ptr< ObjectLabel > obj) |
| virtual std::string | MR::ChangeLabelAction::name () const override |
| virtual void | MR::ChangeLabelAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ChangeLabelAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::ObjectLabel::ObjectLabel () |
| | MR::ObjectLabel::ObjectLabel (ObjectLabel &&) noexcept=default |
| ObjectLabel & | MR::ObjectLabel::operator= (ObjectLabel &&) noexcept=default |
| static constexpr const char * | MR::ObjectLabel::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectLabel::typeName () const override |
| virtual void | MR::ObjectLabel::applyScale (float scaleFactor) override |
| | scale object size (all point positions)
|
| virtual bool | MR::ObjectLabel::hasVisualRepresentation () const override |
| | does the object have any visual representation (visible points, triangles, edges, etc.), no considering child objects
|
| virtual std::shared_ptr< Object > | MR::ObjectLabel::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectLabel::shallowClone () const override |
| virtual void | MR::ObjectLabel::setFontHeight (float size) |
| | sets size of label font in pixels
|
| float | MR::ObjectLabel::getFontHeight () const |
| | returns size of label font on screen in pixels
|
| void | MR::ObjectLabel::setLabel (const PositionedText &label) |
| | sets text and position of label
|
| const PositionedText & | MR::ObjectLabel::getLabel () const |
| void | MR::ObjectLabel::setFontPath (const std::filesystem::path &pathToFont) |
| | sets path to font file
|
| const std::filesystem::path & | MR::ObjectLabel::getFontPath () const |
| void | MR::ObjectLabel::setPivotPoint (const Vector2f &pivotPoint) |
| const Vector2f & | MR::ObjectLabel::getPivotPoint () const |
| | get pivot point
|
| const Vector2f & | MR::ObjectLabel::getPivotShift () const |
| | get pivot shift (pivot point * text diagonal)
|
| virtual void | MR::ObjectLabel::setLeaderLineWidth (float width) |
| | sets width of leader line in pixels
|
| float | MR::ObjectLabel::getLeaderLineWidth () const |
| | returns width of leader line in pixels
|
| virtual void | MR::ObjectLabel::setSourcePointSize (float size) |
| | sets size of source point in pixels
|
| float | MR::ObjectLabel::getSourcePointSize () const |
| | returns size of source point in pixels
|
| virtual void | MR::ObjectLabel::setBackgroundPadding (float padding) |
| | sets background padding in pixels
|
| float | MR::ObjectLabel::getBackgroundPadding () const |
| | returns background padding in pixels
|
| virtual void | MR::ObjectLabel::setSourcePointColor (const Color &color, ViewportId id={}) |
| | sets color of source point
|
| const Color & | MR::ObjectLabel::getSourcePointColor (ViewportId id={}) const |
| | returns color of source point
|
| virtual void | MR::ObjectLabel::setLeaderLineColor (const Color &color, ViewportId id={}) |
| | sets color of leader line
|
| const Color & | MR::ObjectLabel::getLeaderLineColor (ViewportId id={}) const |
| | return color of leader line
|
| void | MR::ObjectLabel::setContourColor (const Color &color, ViewportId id={}) |
| | sets contour color
|
| const Color & | MR::ObjectLabel::getContourColor (ViewportId id={}) const |
| | return contour color
|
| const ViewportProperty< Color > & | MR::ObjectLabel::getSourcePointColorsForAllViewports () const |
| virtual void | MR::ObjectLabel::setSourcePointColorsForAllViewports (ViewportProperty< Color > val) |
| const ViewportProperty< Color > & | MR::ObjectLabel::getLeaderLineColorsForAllViewports () const |
| virtual void | MR::ObjectLabel::setLeaderLineColorsForAllViewports (ViewportProperty< Color > val) |
| const ViewportProperty< Color > & | MR::ObjectLabel::getContourColorsForAllViewports () const |
| virtual void | MR::ObjectLabel::setContourColorsForAllViewports (ViewportProperty< Color > val) |
| | MR::ObjectLabel::ObjectLabel (ProtectedStruct, const ObjectLabel &obj) |
| virtual Box3f | MR::ObjectLabel::getWorldBox (ViewportId={}) const override |
| const std::shared_ptr< Mesh > & | MR::ObjectLabel::labelRepresentingMesh () const |
| virtual size_t | MR::ObjectLabel::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| AllVisualizeProperties | MR::ObjectLabel::getAllVisualizeProperties () const override |
| | get all visualize properties masks
|
| const ViewportMask & | MR::ObjectLabel::getVisualizePropertyMask (AnyVisualizeMaskEnum type) const override |
| | returns mask of viewports where given property is set
|
| void | MR::ObjectLabel::buildMeshFromText () const |
| | MR::ObjectLabel::ObjectLabel (const ObjectLabel &other)=default |
| virtual void | MR::ObjectLabel::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual Box3f | MR::ObjectLabel::computeBoundingBox_ () const override |
| virtual void | MR::ObjectLabel::serializeFields_ (Json::Value &root) const override |
| virtual void | MR::ObjectLabel::deserializeFields_ (const Json::Value &root) override |
| virtual void | MR::ObjectLabel::setupRenderObject_ () const override |
| void | MR::ObjectLabel::setAllVisualizeProperties_ (const AllVisualizeProperties &properties, std::size_t &pos) override |
| | set all visualize properties masks
|
| Expected< Contours2f > | MR::createSymbolContours (const SymbolMeshParams ¶ms) |
| | converts text string into set of contours
|
| Expected< Mesh > | MR::createSymbolsMesh (const SymbolMeshParams ¶ms) |
| | converts text string into Z-facing symbol mesh
|
| virtual void | MR::ImGuiMenu::setupShortcuts_ () |
| Vector4f | MR::ImGuiMenu::getStoredColor_ (const std::string &str, const Color &defaultColor) const |
| static const std::shared_ptr< ImGuiMenu > & | MR::ImGuiMenu::instance () |
| virtual void | MR::ImGuiMenu::init (MR::Viewer *_viewer) override |
| | This function is called when the viewer is initialized (no mesh will be loaded at this stage)
|
| virtual void | MR::ImGuiMenu::initBackend () |
| | inits glfw and glsl backend
|
| virtual void | MR::ImGuiMenu::startFrame () |
| | call this to validate imgui context in the begining of the frame
|
| virtual void | MR::ImGuiMenu::finishFrame () |
| | call this to draw valid imgui context at the end of the frame
|
| virtual void | MR::ImGuiMenu::loadFonts (int fontSize=13) |
| virtual void | MR::ImGuiMenu::load_font (int fontSize=13) |
| virtual void | MR::ImGuiMenu::reloadFonts (int fontSize=13) |
| virtual void | MR::ImGuiMenu::reload_font (int fontSize=13) |
| virtual void | MR::ImGuiMenu::shutdown () override |
| | This function is called before shutdown.
|
| virtual void | MR::ImGuiMenu::draw_menu () |
| | Draw menu.
|
| void | MR::ImGuiMenu::draw_helpers () |
| virtual void | MR::ImGuiMenu::drawViewerWindow () |
| | override this instead using callback_draw_viewer_window
|
| virtual void | MR::ImGuiMenu::draw_viewer_window () |
| virtual void | MR::ImGuiMenu::drawViewerWindowContent () |
| | override this instead using callback_draw_viewer_menu
|
| virtual void | MR::ImGuiMenu::drawAdditionalWindows () |
| | override this instead using callback_draw_custom_window
|
| virtual void | MR::ImGuiMenu::draw_custom_window () |
| void | MR::ImGuiMenu::draw_text (const Viewport &viewport, const Vector3f &pos, const Vector3f &normal, const std::string &text, const Color &color, bool clipByViewport) |
| void | MR::ImGuiMenu::drawLabelsWindow () |
| void | MR::ImGuiMenu::draw_labels_window () |
| float | MR::ImGuiMenu::pixelRatio () |
| | Computes pixel ratio for hidpi devices.
|
| float | MR::ImGuiMenu::pixel_ratio () |
| float | MR::ImGuiMenu::hidpiScaling () |
| | Computes scaling factor for hidpi devices.
|
| float | MR::ImGuiMenu::hidpi_scaling () |
| void | MR::ImGuiMenu::updateScaling () |
| float | MR::ImGuiMenu::menuScaling () const |
| float | MR::ImGuiMenu::menu_scaling () const |
| float | MR::ImGuiMenu::getUserScaling () const |
| | returns UI scaling modifier specified by user
|
| void | MR::ImGuiMenu::setUserScaling (float scaling) |
| | sets UI scaling modifier specified by user
|
| ImGuiContext * | MR::ImGuiMenu::getCurrentContext () const |
| ImGuiWindow * | MR::ImGuiMenu::getLastFocusedPlugin () const |
| virtual void | MR::ImGuiMenu::showModalMessage (const std::string &msg, NotificationType msgType) |
| | opens Error / Warning / Info modal window with message text
|
| virtual std::filesystem::path | MR::ImGuiMenu::getMenuFontPath () const |
| void | MR::ImGuiMenu::setDrawTimeMillisecThreshold (long long maxGoodTimeMillisec) |
| | setup maximum good time for frame rendering (if rendering is slower it will become red in statistics window)
|
| void | MR::ImGuiMenu::draw_scene_list () |
| | Draw scene list window with content.
|
| void | MR::ImGuiMenu::draw_scene_list_content (const std::vector< std::shared_ptr< Object > > &selected, const std::vector< std::shared_ptr< Object > > &all) |
| | Draw scene list content only.
|
| virtual void | MR::ImGuiMenu::draw_selection_properties (const std::vector< std::shared_ptr< Object > > &selected) |
| virtual void | MR::ImGuiMenu::draw_selection_properties_content (const std::vector< std::shared_ptr< Object > > &selected) |
| virtual bool | MR::ImGuiMenu::drawCollapsingHeader_ (const char *label, ImGuiTreeNodeFlags flags=0) |
| | override this to have custom UI in "Selection Properties" window (under "Draw Options")
|
| virtual bool | MR::ImGuiMenu::drawCollapsingHeaderTransform_ () |
| | override this to customize appearance of collapsing headers for transform block
|
| bool | MR::ImGuiMenu::make_visualize_checkbox (std::vector< std::shared_ptr< VisualObject > > selectedVisualObjs, const char *label, AnyVisualizeMaskEnum type, MR::ViewportMask viewportid, bool invert=false) |
| template<typename ObjectT> |
| void | MR::ImGuiMenu::make_color_selector (std::vector< std::shared_ptr< ObjectT > > selectedVisualObjs, const char *label, std::function< Vector4f(const ObjectT *)> getter, std::function< void(ObjectT *, const Vector4f &)> setter) |
| template<typename ObjType, typename ValueT> |
| void | MR::ImGuiMenu::make_width (std::vector< std::shared_ptr< VisualObject > > selectedVisualObjs, const char *label, std::function< ValueT(const ObjType *)> getter, std::function< void(ObjType *, const ValueT &)> setter) |
| void | MR::ImGuiMenu::make_light_strength (std::vector< std::shared_ptr< VisualObject > > selectedVisualObjs, const char *label, std::function< float(const VisualObject *)> getter, std::function< void(VisualObject *, const float &)> setter) |
| template<typename T, typename ObjectType> |
| void | MR::ImGuiMenu::make_slider (std::vector< std::shared_ptr< ObjectType > > selectedVisualObjs, const char *label, std::function< T(const ObjectType *)> getter, std::function< void(ObjectType *, T)> setter, T min, T max) |
| void | MR::ImGuiMenu::make_points_discretization (std::vector< std::shared_ptr< VisualObject > > selectedVisualObjs, const char *label, std::function< int(const ObjectPointsHolder *)> getter, std::function< void(ObjectPointsHolder *, const int &)> setter) |
| std::shared_ptr< ShortcutManager > | MR::ImGuiMenu::getShortcutManager () |
| void | MR::ImGuiMenu::add_modifier (std::shared_ptr< MR::MeshModifier > modifier) |
| void | MR::ImGuiMenu::allowSceneReorder (bool allow) |
| bool | MR::ImGuiMenu::checkPossibilityObjectRemoval () |
| void | MR::ImGuiMenu::allowObjectsRemoval (bool allow) |
| void | MR::ImGuiMenu::tryRenameSelectedObject () |
| void | MR::ImGuiMenu::setObjectTreeState (const Object *obj, bool open) |
| void | MR::ImGuiMenu::expandObjectTreeAndScroll (const Object *obj) |
| | expands all objs parents in tree and scroll scene tree window so selection becomes visible
|
| void | MR::ImGuiMenu::setShowShortcuts (bool val) |
| | set show shortcuts state (enable / disable)
|
| bool | MR::ImGuiMenu::getShowShortcuts () const |
| | return show shortcuts state (enable / disable)
|
| void | MR::ImGuiMenu::enableSavedDialogPositions (bool on) |
| | enables using of saved positions of plugin windows in the config file
|
| bool | MR::ImGuiMenu::isSavedDialogPositionsEnabled () const |
| | returns true if enabled using of saved positions of plugin windows in the config file, false otherwise
|
| virtual UiRenderManager & | MR::ImGuiMenu::getUiRenderManager () |
| | This class helps the viewer to renderUi() from IRenderObjects.
|
| const std::shared_ptr< SceneObjectsListDrawer > & | MR::ImGuiMenu::getSceneObjectsList () |
| bool | MR::ImGuiMenu::simulateNameTagClick (Object &object, NameTagSelectionMode mode) |
| | Behaves as if the user clicked the object name tag, by invoking nameTagClickSignal.
|
| bool | MR::ImGuiMenu::simulateNameTagClickWithKeyboardModifiers (Object &object) |
| | This version uses the currently held keyboard modifiers instead of a custom mode.
|
| bool | MR::ImGuiMenu::anyImGuiWindowIsHovered () const |
| | Scene pick should be disabled because an ImGui window is in the way.
|
| bool | MR::ImGuiMenu::anyUiObjectIsHovered () const |
| | Scene pick should be disabled because a renderUi() UI of some object is in the way.
|
| SelectedTypesMask | MR::ImGuiMenu::calcSelectedTypesMask (const std::vector< std::shared_ptr< Object > > &selectedObjs) |
| bool | MR::ImGuiMenu::drawGeneralOptions (const std::vector< std::shared_ptr< Object > > &selectedObjs) |
| bool | MR::ImGuiMenu::drawAdvancedOptions (const std::vector< std::shared_ptr< VisualObject > > &selectedObjs, SelectedTypesMask selectedMask) |
| bool | MR::ImGuiMenu::drawRemoveButton (const std::vector< std::shared_ptr< Object > > &selectedObjs) |
| bool | MR::ImGuiMenu::drawDrawOptionsCheckboxes (const std::vector< std::shared_ptr< VisualObject > > &selectedObjs, SelectedTypesMask selectedMask) |
| bool | MR::ImGuiMenu::drawDrawOptionsColors (const std::vector< std::shared_ptr< VisualObject > > &selectedObjs) |
| virtual void | MR::ImGuiMenu::drawModalMessage_ () |
| virtual bool | MR::ImGuiMenu::onMouseDown_ (MouseButton button, int modifier) override |
| | Mouse IO.
|
| virtual bool | MR::ImGuiMenu::onMouseUp_ (MouseButton button, int modifier) override |
| virtual bool | MR::ImGuiMenu::onMouseMove_ (int mouse_x, int mouse_y) override |
| virtual bool | MR::ImGuiMenu::onMouseScroll_ (float delta_y) override |
| virtual void | MR::ImGuiMenu::cursorEntrance_ (bool entered) override |
| virtual bool | MR::ImGuiMenu::onCharPressed_ (unsigned key, int modifiers) override |
| | Keyboard IO.
|
| virtual bool | MR::ImGuiMenu::onKeyDown_ (int key, int modifiers) override |
| virtual bool | MR::ImGuiMenu::onKeyUp_ (int key, int modifiers) override |
| virtual bool | MR::ImGuiMenu::onKeyRepeat_ (int key, int modifiers) override |
| virtual void | MR::ImGuiMenu::postResize_ (int width, int height) override |
| | Scene events.
|
| virtual void | MR::ImGuiMenu::postRescale_ (float x, float y) override |
| virtual bool | MR::ImGuiMenu::spaceMouseMove_ (const Vector3f &translate, const Vector3f &rotate) override |
| | Spacemouse events.
|
| virtual bool | MR::ImGuiMenu::spaceMouseDown_ (int key) override |
| virtual bool | MR::ImGuiMenu::touchpadRotateGestureBegin_ () override |
| | Touchpad gesture events.
|
| virtual bool | MR::ImGuiMenu::touchpadRotateGestureUpdate_ (float angle) override |
| virtual bool | MR::ImGuiMenu::touchpadRotateGestureEnd_ () override |
| virtual bool | MR::ImGuiMenu::touchpadSwipeGestureBegin_ () override |
| virtual bool | MR::ImGuiMenu::touchpadSwipeGestureUpdate_ (float deltaX, float deltaY, bool kinetic) override |
| virtual bool | MR::ImGuiMenu::touchpadSwipeGestureEnd_ () override |
| virtual bool | MR::ImGuiMenu::touchpadZoomGestureBegin_ () override |
| virtual bool | MR::ImGuiMenu::touchpadZoomGestureUpdate_ (float scale, bool kinetic) override |
| virtual bool | MR::ImGuiMenu::touchpadZoomGestureEnd_ () override |
| virtual void | MR::ImGuiMenu::postFocus_ (bool focused) override |
| | Other events.
|
| virtual void | MR::ImGuiMenu::rescaleStyle_ () |
| float | MR::ImGuiMenu::drawSelectionInformation_ () |
| void | MR::ImGuiMenu::drawFeaturePropertiesEditor_ (const std::shared_ptr< Object > &object) |
| void | MR::ImGuiMenu::drawComparablePropertiesEditor_ (ObjectComparableWithReference &object) |
| virtual void | MR::ImGuiMenu::drawCustomSelectionInformation_ (const std::vector< std::shared_ptr< Object > > &selected, const SelectionInformationStyle &style) |
| | draw additional selection information (e.g. for custom objects)
|
| virtual void | MR::ImGuiMenu::draw_custom_selection_properties (const std::vector< std::shared_ptr< Object > > &selected) |
| void | MR::ImGuiMenu::drawTagInformation_ (const std::vector< std::shared_ptr< Object > > &selected) |
| float | MR::ImGuiMenu::drawTransform_ () |
| virtual bool | MR::ImGuiMenu::drawTransformContextMenu_ (const std::shared_ptr< Object > &) |
| virtual void | MR::ImGuiMenu::drawShortcutsWindow_ () |
| | A virtual function for drawing of the dialog with shortcuts. It can be overriden in the inherited classes.
|
| float | MR::ImGuiMenu::getSceneInfoItemWidth_ (int itemCount=1) |
| | returns width of items in Scene Info window
|
| void | MR::ImGuiMenu::UiRenderManagerImpl::preRenderViewport (ViewportId viewport) override |
| | This is called before doing IRenderObject::renderUi() on even object in a viewport. Each viewport is rendered separately.
|
| void | MR::ImGuiMenu::UiRenderManagerImpl::postRenderViewport (ViewportId viewport) override |
| | This is called after doing IRenderObject::renderUi() on even object in a viewport. Each viewport is rendered separately.
|
| BasicUiRenderTask::BackwardPassParams | MR::ImGuiMenu::UiRenderManagerImpl::beginBackwardPass (ViewportId viewport, UiRenderParams::UiTaskList &tasks) override |
| void | MR::ImGuiMenu::UiRenderManagerImpl::finishBackwardPass (ViewportId viewport, const BasicUiRenderTask::BackwardPassParams ¶ms) override |
| | After the backward pass is performed, the parameters should be passed back into this function.
|
| bool | MR::ImGuiMenu::UiRenderManagerImpl::canConsumeEvent (BasicUiRenderTask::InteractionMask event) const |
| void | MR::reserveKeyEvent (ImGuiKey key) |
| | call if you want ImGui to take event if this key is pressed (to prevent scene reaction on key press)
|
| | MR::AlphaSortGL::~AlphaSortGL () |
| void | MR::AlphaSortGL::init () |
| | Initialize all GL buffers and arrays.
|
| void | MR::AlphaSortGL::free () |
| | Free all GL data.
|
| void | MR::AlphaSortGL::clearTransparencyTextures () const |
| | Set all textures used for alpha sorting to zero (heads texture, atomics texture)
|
| void | MR::AlphaSortGL::drawTransparencyTextureToScreen () const |
| | Draws alpha sorting overlay quad texture to screen.
|
| void | MR::AlphaSortGL::updateTransparencyTexturesSize (int width, int height) |
| | Updates size of textures used in alpha sorting (according to viewport size)
|
| | MR::AncillaryLabel::AncillaryLabel ()=default |
| | MR::AncillaryLabel::AncillaryLabel (AncillaryLabel &&b) noexcept=default |
| | since this uniquely owns an ancillary object, we provide only move operations, not copy
|
| AncillaryLabel & | MR::AncillaryLabel::operator= (AncillaryLabel &&b) |
| | MR::AncillaryLabel::AncillaryLabel (Object &parent, const PositionedText &text, bool depthTest=false) |
| | Make not-pickable ancillary object, link it to parent object, and set label text.
|
| void | MR::AncillaryLabel::make (Object &parent, const PositionedText &text, bool depthTest=false) |
| | Make not-pickable ancillary object, link it to parent object, and set label text.
|
| static std::shared_ptr< ObjectLabel > | MR::AncillaryLabel::makeDetached (const PositionedText &text, bool depthTest=false) |
| | Make not-pickable ancillary object without parent object, and set label text.
|
| void | MR::AncillaryLabel::reset () |
| | detach owned object from parent, stops owning it
|
| | MR::AncillaryLabel::~AncillaryLabel () |
| | detach owned object from parent, stops owning it
|
| void | MR::AncillaryLabel::setText (const PositionedText &text) |
| | Set label text.
|
| void | MR::AncillaryLabel::resetText () |
| | Reset label text.
|
| void | MR::AncillaryLabel::setDepthTest (bool depthTest) |
| | Set depth test.
|
| void | MR::AncillaryLabel::setPosition (const Vector3f &pos) |
| | Set text position.
|
| | MR::AncillaryImGuiLabel::AncillaryImGuiLabel ()=default |
| void | MR::AncillaryImGuiLabel::make (Object &parent, const PositionedText &text) |
| | Make label in parent space coordinates, follows parent worldXf.
|
| void | MR::AncillaryImGuiLabel::make (std::shared_ptr< Object > parent, const PositionedText &text) |
| void | MR::AncillaryImGuiLabel::make (const PositionedText &text) |
| | Make label in world space coordinates.
|
| void | MR::AncillaryImGuiLabel::reset () |
| | clears this instance
|
| Vector2f | MR::AncillaryImGuiLabel::getPivot () const |
| void | MR::AncillaryImGuiLabel::setPivot (Vector2f pivot) |
| void | MR::AncillaryImGuiLabel::overrideParams (const ImGuiMeasurementIndicators::Params ¶ms) |
| | Optionally override rendering params for this label.
|
| void | MR::AncillaryImGuiLabel::resetOverrideParams () |
| | use default parameters instead of overridden ones
|
| | MR::AncillaryLines::AncillaryLines ()=default |
| | MR::AncillaryLines::AncillaryLines (AncillaryLines &&b) noexcept=default |
| | since this uniquely owns an ancillary object, we provide only move operations, not copy
|
| AncillaryLines & | MR::AncillaryLines::operator= (AncillaryLines &&b) |
| | MR::AncillaryLines::AncillaryLines (Object &parent) |
| | Make not-pickable ancillary object, link it to parent object, and set line geometry.
|
| | MR::AncillaryLines::AncillaryLines (Object &parent, const Contour3f &contour) |
| | MR::AncillaryLines::AncillaryLines (Object &parent, const Contours3f &contours) |
| void | MR::AncillaryLines::make (Object &parent) |
| | Make not-pickable ancillary object, link it to parent object, and set line geometry.
|
| void | MR::AncillaryLines::make (Object &parent, const Contour3f &contour) |
| void | MR::AncillaryLines::make (Object &parent, const Contours3f &contours) |
| void | MR::AncillaryLines::colorizeAxes () |
| | Assign an axis' color from the color theme to each line collinear with the axis.
|
| void | MR::AncillaryLines::reset () |
| | detach owned object from parent, stops owning it
|
| | MR::AncillaryLines::~AncillaryLines () |
| | detach owned object from parent, stops owning it
|
| void | MR::AncillaryLines::setContours (const Contours3f &contours) |
| | Set line geometry.
|
| void | MR::AncillaryLines::resetContours () |
| | Reset line geometry.
|
| void | MR::AncillaryLines::setDepthTest (bool depthTest) |
| | Set depth test.
|
| | MR::AncillaryMesh::AncillaryMesh ()=default |
| | MR::AncillaryMesh::AncillaryMesh (AncillaryMesh &&b) noexcept=default |
| | since this uniquely owns an ancillary object, we provide only move operations, not copy
|
| AncillaryMesh & | MR::AncillaryMesh::operator= (AncillaryMesh &&b) |
| | MR::AncillaryMesh::AncillaryMesh (Object &parent) |
| | Make not-pickable object, link it to parent object.
|
| void | MR::AncillaryMesh::make (Object &parent) |
| | Make not-pickable object, link it to parent object.
|
| void | MR::AncillaryMesh::reset () |
| | detach owned object from parent, stops owning it
|
| | MR::AncillaryMesh::~AncillaryMesh () |
| | detach owned object from parent, stops owning it
|
| | MR::AncillaryPlane::AncillaryPlane ()=default |
| | MR::AncillaryPlane::AncillaryPlane (AncillaryPlane &&b) noexcept=default |
| | since this uniquely owns an ancillary object, we provide only move operations, not copy
|
| AncillaryPlane & | MR::AncillaryPlane::operator= (AncillaryPlane &&b) |
| | MR::AncillaryPlane::~AncillaryPlane () |
| void | MR::AncillaryPlane::make () |
| void | MR::AncillaryPlane::reset () |
| | MR::AncillaryPoints::AncillaryPoints ()=default |
| | MR::AncillaryPoints::AncillaryPoints (AncillaryPoints &&b) noexcept=default |
| | since this uniquely owns an ancillary object, we provide only move operations, not copy
|
| AncillaryPoints & | MR::AncillaryPoints::operator= (AncillaryPoints &&b) |
| | MR::AncillaryPoints::AncillaryPoints (Object &parent) |
| | Make not-pickable object, link it to parent object.
|
| void | MR::AncillaryPoints::make (Object &parent) |
| | Make not-pickable object, link it to parent object.
|
| void | MR::AncillaryPoints::reset () |
| | detach owned object from parent, stops owning it
|
| | MR::AncillaryPoints::~AncillaryPoints () |
| | detach owned object from parent, stops owning it
|
| void | MR::AncillaryPoints::addPoint (const Vector3f &point) |
| | add ancillary point
|
| void | MR::AncillaryPoints::addPoint (const Vector3f &point, const Color &color) |
| | add ancillary point with color
|
| void | MR::AncillaryPoints::addPoints (const std::vector< Vector3f > &points) |
| | add vector of ancillary points
|
| void | MR::AncillaryPoints::addPoints (const std::vector< Vector3f > &points, const std::vector< Vector4f > &colors) |
| | add vector of ancillary points with colors
|
| void | MR::AncillaryPoints::setDepthTest (bool depthTest) |
| | Set depth test.
|
| void | MR::AppendHistory (std::shared_ptr< HistoryAction > action) |
| | Appends given history action to viewer's global history store.
|
| template<class HistoryActionType, typename... Args> |
| void | MR::AppendHistory (Args &&... args) |
| | Constructs history action from given arguments, than appends it to viewer's global history store.
|
| template<typename... Args> |
| | MR::Historian< HistoryActionType >::Historian (std::string name, std::shared_ptr< Obj > obj, Args &&... args) |
| void | MR::Historian< HistoryActionType >::cancelAction () |
| | MR::Historian< HistoryActionType >::~Historian () |
| void | MR::FilterHistoryByCondition (HistoryStackFilter filteringCondition, bool deepFiltering=true) |
| | MR::ScopeHistory::ScopeHistory (const std::string &name) |
| | creates new CombinedHistoryAction, and setups global history store to append all new actions there during this object lifetime
|
| | MR::ScopeHistory::~ScopeHistory () |
| | created before CombinedHistoryAction if not empty is appended (with all sub-actions) in the global history store
|
| const std::shared_ptr< CombinedHistoryAction > & | MR::ScopeHistory::combinedAction () const |
| | returns the action being populated
|
| void | MR::AsyncTimer::setTime (const Time &time) |
| | sets alert time, forgetting about previous time
|
| bool | MR::AsyncTimer::setTimeIfNotSet (const Time &time) |
| void | MR::AsyncTimer::resetTime () |
| | reset the timer
|
| void | MR::AsyncTimer::terminate () |
| | orders the waiter thread to stop
|
| Event | MR::AsyncTimer::waitBlocking () |
| | MR::AsyncRequest::AsyncRequest () |
| | MR::AsyncRequest::~AsyncRequest () |
| void | MR::AsyncRequest::request (const Time &time, Command command) |
| void | MR::AsyncRequest::requestIfNotSet (const Time &time, Command command) |
| void | MR::AsyncRequest::reset () |
| | clears command
|
| Expected< std::string > | MR::GetClipboardText () |
| | returns data in clipboard
|
| Expected< void > | MR::SetClipboardText (const std::string &text) |
| | sets data in clipboard
|
| static ColorTheme & | MR::ColorTheme::instance () |
| static Preset | MR::ColorTheme::getPreset () |
| static const char * | MR::ColorTheme::getPresetName (Preset type) |
| static Type | MR::ColorTheme::getThemeType () |
| static const std::string & | MR::ColorTheme::getThemeName () |
| static void | MR::ColorTheme::setupByTypeName (Type type, const std::string &name) |
| | Setup this struct.
|
| static void | MR::ColorTheme::setupDefaultDark () |
| static void | MR::ColorTheme::setupDefaultLight () |
| static void | MR::ColorTheme::setupUserTheme (const std::string &themeName) |
| static void | MR::ColorTheme::setupFromFile (const std::filesystem::path &path, Type type=Type::User) |
| | Setup this struct from serialized color-theme file.
|
| static void | MR::ColorTheme::setupFromJson (const Json::Value &value, Type type=Type::User) |
| | Setup this struct from Json value.
|
| static void | MR::ColorTheme::serializeCurrentToFile (const std::filesystem::path &path) |
| static void | MR::ColorTheme::serializeCurrentToJson (Json::Value &root) |
| static bool | MR::ColorTheme::isInitialized () |
| | True if this structure is filled with colors, false if empty.
|
| static void | MR::ColorTheme::setRibbonColor (const Color &color, RibbonColorsType type) |
| | Getter and setter for ribbon colors.
|
| static const Color & | MR::ColorTheme::getRibbonColor (RibbonColorsType type) |
| static const char * | MR::ColorTheme::getRibbonColorTypeName (RibbonColorsType type) |
| static void | MR::ColorTheme::setViewportColor (const Color &color, ViewportColorsType type) |
| | Getter and setter for viewport colors.
|
| static const Color & | MR::ColorTheme::getViewportColor (ViewportColorsType type) |
| static const char * | MR::ColorTheme::getViewportColorTypeName (ViewportColorsType type) |
| static std::filesystem::path | MR::ColorTheme::getUserThemesDirectory () |
| | Returns directory where user's custom themes are stored.
|
| static void | MR::ColorTheme::updateUserThemesList () |
| | Find available custom themes.
|
| static std::vector< std::string > | MR::ColorTheme::foundUserThemes () |
| | Return list of found custom themes.
|
| static void | MR::ColorTheme::resetImGuiStyle () |
| | Reset ImGui style sizes and colors, and apply menu scaling to it.
|
| static boost::signals2::connection | MR::ColorTheme::onChanged (const std::function< void()> &slot, boost::signals2::connect_position position=boost::signals2::at_back) |
| | Connects given slot to receive signal on every Color Theme change, triggered in apply.
|
| static void | MR::CommandLoop::setMainThreadId (const std::thread::id &id) |
| | This function setups main thread id, it should be called before any command.
|
| static std::thread::id | MR::CommandLoop::getMainThreadId () |
| static void | MR::CommandLoop::setState (StartPosition state) |
| | Update state of command loop, only can rise.
|
| static void | MR::CommandLoop::appendCommand (CommandFunc func, StartPosition state=StartPosition::BeforeWindowAppear) |
| static void | MR::CommandLoop::runCommandFromGUIThread (CommandFunc func) |
| static void | MR::CommandLoop::processCommands () |
| | Execute all commands from loop.
|
| static bool | MR::CommandLoop::empty () |
| | Return true if loop is empty.
|
| static void | MR::CommandLoop::removeCommands (bool closeLoop) |
| void | MR::createShader (const std::string &shader_name, const std::string &vert_source, const std::string &frag_source, GLuint &prog_id, const DisabledWarnings &suppressedWarns={}) |
| | This function creates shader and logs output.
|
| void | MR::destroyShader (GLuint id) |
| | Destroys shader program.
|
| static void | MR::CudaAccessor::setCudaAvailable (bool val, int maxDriverVersion, int runtimeVersion, int computeMajor, int computeMinor) |
| | setup functions
|
| static void | MR::CudaAccessor::setCudaFreeMemoryFunc (CudaFreeMemoryFunc freeMemFunc) |
| static void | MR::CudaAccessor::setCudaFastWindingNumberConstructor (CudaFwnConstructor fwnCtor) |
| static void | MR::CudaAccessor::setCudaMeshProjectorConstructor (CudaMeshProjectorConstructor mpCtor) |
| static void | MR::CudaAccessor::setCudaPointsProjectorConstructor (CudaPointsProjectorConstructor ppCtor) |
| static void | MR::CudaAccessor::setCudaPointsToDistanceVolumeCallback (CudaPointsToDistanceVolumeCallback callback) |
| static void | MR::CudaAccessor::setCudaPointsToDistanceVolumeByPartsCallback (CudaPointsToDistanceVolumeByPartsCallback callback) |
| static void | MR::CudaAccessor::setCudaComputeToolDistanceConstructor (CudaComputeToolDistanceConstructor ctdCtor) |
| static bool | MR::CudaAccessor::isCudaSupportedByPlarform () |
| static bool | MR::CudaAccessor::isCudaAvailable () |
| | Returns true if CUDA is available on this computer.
|
| static int | MR::CudaAccessor::getCudaMaxDriverSupportedVersion () |
| | Returns maximum supported by driver version.
|
| static int | MR::CudaAccessor::getCudaRuntimeVersion () |
| | Returns version of current runtime.
|
| static int | MR::CudaAccessor::getComputeCapabilityMajor () |
| | Returns Compute Capability major version of current device.
|
| static int | MR::CudaAccessor::getComputeCapabilityMinor () |
| | Returns Compute Capability minor version of current device.
|
| static size_t | MR::CudaAccessor::getCudaFreeMemory () |
| | Returns number of free bytes on cuda.
|
| static std::unique_ptr< IFastWindingNumber > | MR::CudaAccessor::getCudaFastWindingNumber (const Mesh &mesh) |
| | Returns cuda implementation of IFastWindingNumber.
|
| static std::unique_ptr< IPointsToMeshProjector > | MR::CudaAccessor::getCudaPointsToMeshProjector () |
| | Returns cuda implementation of IPointsToMeshProjector.
|
| static std::unique_ptr< IPointsProjector > | MR::CudaAccessor::getCudaPointsProjector () |
| | Returns cuda implementation of IPointsProjector.
|
| static CudaPointsToDistanceVolumeCallback | MR::CudaAccessor::getCudaPointsToDistanceVolumeCallback () |
| | Returns cuda implementation of PointsToDistanceVolumeCallback.
|
| static CudaPointsToDistanceVolumeByPartsCallback | MR::CudaAccessor::getCudaPointsToDistanceVolumeByPartsCallback () |
| | Returns cuda implementation of PointsToDistanceVolumeByPartsCallback.
|
| static std::unique_ptr< IComputeToolDistance > | MR::CudaAccessor::getCudaComputeToolDistance () |
| | Returns CUDA implementation of IComputeToolDistance.
|
| static size_t | MR::CudaAccessor::fastWindingNumberMeshMemory (const Mesh &mesh) |
| static size_t | MR::CudaAccessor::fromGridMemory (const Mesh &mesh, const Vector3i &dims) |
| static size_t | MR::CudaAccessor::fromVectorMemory (const Mesh &mesh, size_t inputSize) |
| | returns amount of required GPU memory for CudaFastWindingNumber::calcFromVector operation
|
| static size_t | MR::CudaAccessor::selfIntersectionsMemory (const Mesh &mesh) |
| | returns amount of required GPU memory for CudaFastWindingNumber::calcSelfIntersections operation
|
| static size_t | MR::CudaAccessor::pointsToDistanceVolumeMemory (const PointCloud &pointCloud, const Vector3i &dims, const VertNormals *ptNormals) |
| | returns amount of required GPU memory for Cuda::pointsToDistanceVolume
|
| virtual void | MR::DemoPlugin::init (Viewer *_viewer) override |
| | This function is called when the viewer is initialized (no mesh will be loaded at this stage)
|
| virtual void | MR::DemoPlugin::shutdown () override |
| | This function is called before shutdown.
|
| | MR::DepthPeelingGL::MR_ADD_CTOR_DELETE_MOVE (DepthPeelingGL) |
| void | MR::DepthPeelingGL::reset (const Vector2i &size) |
| bool | MR::DepthPeelingGL::doPasses (FramebufferData *bgFramebuffer) |
| void | MR::DepthPeelingGL::draw () |
| | draws this result texture onto
|
| int | MR::DepthPeelingGL::getNumPasses () const |
| | functions to control number of passes
|
| void | MR::DepthPeelingGL::setNumPasses (int passes) |
| | MR::DirectionWidget::ChangeDirAction::ChangeDirAction (DirectionWidget &widget, const std::string &name="Change Direction") |
| | MR::DirectionWidget::ChangeVisibleAction::ChangeVisibleAction (DirectionWidget &widget) |
| virtual void | MR::DirectionWidget::ChangeVisibleAction::action (Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual std::string | MR::DirectionWidget::ChangeVisibleAction::name () const override |
| virtual size_t | MR::DirectionWidget::ChangeVisibleAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| void | MR::DirectionWidget::create (Object *parent=nullptr) |
| void | MR::DirectionWidget::create (const Vector3f &worldDir, const Vector3f &worldBase, float worldLength, OnDirectionChangedCallback onDirectionChanged, Object *parent=nullptr) |
| void | MR::DirectionWidget::reset () |
| void | MR::DirectionWidget::setOnDirectionChangedCallback (OnDirectionChangedCallback cb) |
| | Manually set callback function.
|
| void | MR::DirectionWidget::updateArrow (const Arrow &arrow) |
| | Updates the arrow, in world space.
|
| void | MR::DirectionWidget::updateLocalArrow (const Arrow &arrow) |
| | Updates the arrow in parent's space.
|
| void | MR::DirectionWidget::updateDirection (const Vector3f &dir) |
| | Updates the direction of the arrow, in world space.
|
| void | MR::DirectionWidget::updateLocalDirection (const Vector3f &dir) |
| | Updates the direction of the arrow in parent's space.
|
| void | MR::DirectionWidget::updateBase (const Vector3f &base) |
| | Updates the base of the arrow, in world space.
|
| void | MR::DirectionWidget::updateLocalBase (const Vector3f &base) |
| | Updates the base of the arrow in parent's space.
|
| void | MR::DirectionWidget::updateLength (float length) |
| | Updates the length of the arrow, in world space.
|
| void | MR::DirectionWidget::updateLocalLength (float length) |
| | Updates the length of the arrow in parent's space.
|
| const std::shared_ptr< ObjectMesh > & | MR::DirectionWidget::obj () const |
| | Returns internal data model object of this widget.
|
| void | MR::DirectionWidget::setVisible (bool visible) |
| | Sets the visibility of the widget.
|
| bool | MR::DirectionWidget::isVisible () const |
| void | MR::DirectionWidget::setColor (const Color &color) |
| | Sets the color of the widget.
|
| const Color & | MR::DirectionWidget::getColor () const |
| | Returns the color of the widget.
|
| Arrow | MR::DirectionWidget::getArrow () const |
| | Returns the arrow's properties, in world space.
|
| Arrow | MR::DirectionWidget::getLocalArrow () const |
| | Returns the arrow's properties in parent's space.
|
| Vector3f | MR::DirectionWidget::getBase () const |
| | Returns the base of the widget, in world space.
|
| Vector3f | MR::DirectionWidget::getLocalBase () const |
| | Returns the base of the widget in parent's space.
|
| Vector3f | MR::DirectionWidget::getDirection () const |
| | Returns the direction of the widget, in world space.
|
| Vector3f | MR::DirectionWidget::getLocalDirection () const |
| | Returns the direction of the widget in parent's space.
|
| float | MR::DirectionWidget::getLength () const |
| | Returns the length of the arrow in world space.
|
| float | MR::DirectionWidget::getLocalLength () const |
| | Returns the length of the arrow in parent's space.
|
| Object * | MR::DirectionWidget::getParentPtr () const |
| | Returns pointer to parent object, always not-null after create() and before reset()
|
| bool | MR::DirectionWidget::isMouseBlocked () const |
| | Block or allow mouse editing (allowed by default)
|
| void | MR::DirectionWidget::setMouseBlocked (bool blocked) |
| virtual | MR::IDragDropHandler::~IDragDropHandler ()=default |
| std::unique_ptr< IDragDropHandler > | MR::getDragDropHandler (GLFWwindow *window) |
| static FileDialogSignals & | MR::FileDialogSignals::instance () |
| | returns instance of this holder
|
| std::filesystem::path | MR::openFileDialog (const FileParameters ¶ms={}) |
| void | MR::openFileDialogAsync (std::function< void(const std::filesystem::path &)> callback, const FileParameters ¶ms={}) |
| std::vector< std::filesystem::path > | MR::openFilesDialog (const FileParameters ¶ms={}) |
| void | MR::openFilesDialogAsync (std::function< void(const std::vector< std::filesystem::path > &)> callback, const FileParameters ¶ms={}) |
| std::filesystem::path | MR::openFolderDialog (std::filesystem::path baseFolder={}) |
| void | MR::openFolderDialogAsync (std::function< void(const std::filesystem::path &)> callback, std::filesystem::path baseFolder={}) |
| std::vector< std::filesystem::path > | MR::openFoldersDialog (std::filesystem::path baseFolder={}) |
| std::filesystem::path | MR::saveFileDialog (const FileParameters ¶ms={}) |
| | returns empty path on cancel
|
| void | MR::saveFileDialogAsync (std::function< void(const std::filesystem::path &)> callback, const FileParameters ¶ms={}) |
| std::filesystem::path | MR::FileDialog::getLastUsedDir () |
| void | MR::FileDialog::setLastUsedDir (const std::filesystem::path &folder) |
| | saves in the configuration the path to last used folder (where the files were last saved or open)
|
| | MR::FitDataParams::FitDataParams (float factor_=1.f, bool snapView_=false, FitMode mode_=FitMode::Visible, const std::vector< std::shared_ptr< VisualObject > > &objsList_={}) |
| | custom objects list. used only with CustomObjectsList mode
|
| | MR::FitBoxParams::FitBoxParams (const Box3f &worldBox_, float factor_=1.f, bool snapView_=false) |
| | box in world space to fit
|
| void | MR::FrameCounter::startDraw () |
| void | MR::FrameCounter::endDraw (bool swapped) |
| void | MR::FrameCounter::reset () |
| void | MR::FrameRedrawRequest::reset () |
| void | MR::FrameRedrawRequest::requestFrame (size_t millisecondsInterval=100) |
| Json::Value | MR::GetSystemInfoJson () |
| | Accumulate system information in Json value.
|
| static GLuint | MR::GLStaticHolder::getShaderId (ShaderType type) |
| | Creates shader if it is not and return valid id.
|
| static void | MR::GLStaticHolder::freeShader (ShaderType type) |
| | Free shader from GL.
|
| static void | MR::GLStaticHolder::freeAllShaders () |
| | Free all shaders from GL.
|
| static RenderObjectBuffer & | MR::GLStaticHolder::getStaticGLBuffer () |
| | Memory buffer for objects that about to be loaded to GPU, shared among different data types.
|
| static ShaderType | MR::GLStaticHolder::getTransparentPointsShader (TransparencyMode m) |
| | Returns the shader to render transparent points in the given mode.
|
| static ShaderType | MR::GLStaticHolder::getTransparentLinesShader (TransparencyMode m) |
| | Returns the shader to render transparent lines in the given mode.
|
| static ShaderType | MR::GLStaticHolder::getTransparentMeshShader (TransparencyMode m) |
| | Returns the shader to render transparent mesh in the given mode.
|
| void | MR::setTextureWrapType (WrapType wrapType, GLenum type=GL_TEXTURE_2D) |
| void | MR::setTextureFilterType (FilterType filterType, GLenum type=GL_TEXTURE_2D) |
| | MR::GlTexture::GlTexture (GLenum val) |
| | MR::GlTexture::GlTexture (const GlTexture &)=delete |
| | MR::GlTexture::GlTexture (GlTexture &&r) |
| virtual | MR::GlTexture::~GlTexture () |
| GlTexture & | MR::GlTexture::operator= (const GlTexture &)=delete |
| GlTexture & | MR::GlTexture::operator= (GlTexture &&r) |
| auto | MR::GlTexture::getId () const |
| bool | MR::GlTexture::valid () const |
| size_t | MR::GlTexture::size () const |
| void | MR::GlTexture::gen () |
| | generates new texture
|
| void | MR::GlTexture::del () |
| | deletes the texture
|
| void | MR::GlTexture::bind () |
| | binds current texture to OpenGL context
|
| size_t | MR::GlTexture::Settings::size () const |
| void | MR::GlTexture::loadData (const Settings &settings, const char *arr) |
| | creates GL data texture using given data and binds it
|
| template<typename C> |
| void | MR::GlTexture::loadData (const Settings &settings, const C &cont) |
| void | MR::GlTexture::loadDataOpt (bool refresh, const Settings &settings, const char *arr) |
| | binds current texture to OpenGL context, optionally refreshing its data
|
| template<typename C> |
| void | MR::GlTexture::loadDataOpt (bool refresh, const Settings &settings, const C &cont) |
| virtual void | MR::GlTexture::texImage_ (const Settings &settings, const char *arr)=0 |
| | MR::ImGuiImage::ImGuiImage () |
| virtual | MR::ImGuiImage::~ImGuiImage () |
| void | MR::ImGuiImage::update (const MeshTexture &texture) |
| | Sets image to texture.
|
| ImTextureID | MR::ImGuiImage::getImTextureId () const |
| unsigned | MR::ImGuiImage::getId () const |
| | Returns gl texture id.
|
| const MeshTexture & | MR::ImGuiImage::getMeshTexture () const |
| | Returns current MeshTexture.
|
| int | MR::ImGuiImage::getImageWidth () const |
| int | MR::ImGuiImage::getImageHeight () const |
| | MR::NameTagClickListener::MR_ADD_CTOR_DELETE_MOVE (NameTagClickListener) |
| virtual | MR::NameTagClickListener::~NameTagClickListener ()=default |
| virtual void | MR::NameTagClickListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::NameTagClickListener::onNameTagClicked_ (Object &object, ImGuiMenu::NameTagSelectionMode mode)=0 |
| | MR::DrawSceneUiListener::MR_ADD_CTOR_DELETE_MOVE (DrawSceneUiListener) |
| virtual | MR::DrawSceneUiListener::~DrawSceneUiListener ()=default |
| virtual void | MR::DrawSceneUiListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::DrawSceneUiListener::onDrawSceneUi_ (ViewportId viewportId, UiRenderParams::UiTaskList &tasks)=0 |
| virtual | MR::ISceneStateCheck::~ISceneStateCheck ()=default |
| virtual std::string | MR::ISceneStateCheck::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| ViewportMask | MR::ItemEnabledPerViewport::getEnabledViewports () const |
| void | MR::ItemEnabledPerViewport::setEnabledViewports (ViewportMask newMask) |
| | MR::ItemEnabledPerViewport::ItemEnabledPerViewport ()=default |
| | MR::LambdaRibbonItem::LambdaRibbonItem (std::string name, SimpleLambda lambda) |
| virtual bool | MR::LambdaRibbonItem::action () override |
| | returns true if state of item changed
|
| std::string | MR::getLinesVertexShader () |
| std::string | MR::getLinesFragmentShader (ShaderTransparencyMode mode) |
| std::string | MR::getLinesJointVertexShader () |
| std::string | MR::getLinesJointFragmentShader () |
| std::string | MR::getLinesPickerVertexShader () |
| std::string | MR::getLinesJointPickerVertexShader () |
| | MR::MarkedVoxelSlice::MarkedVoxelSlice (const ObjectVoxels &voxels) |
| VoxelBitSet & | MR::MarkedVoxelSlice::getMask (MaskType type) |
| const VoxelBitSet & | MR::MarkedVoxelSlice::getMask (MaskType type) const |
| | Returns mask(VoxelBitSet of whole voxel object) of given type.
|
| void | MR::MarkedVoxelSlice::setMask (const VoxelBitSet &mask, MaskType type) |
| | Sets mask(VoxelBitSet of whole voxel object) of given type, updates texture.
|
| const Color & | MR::MarkedVoxelSlice::getColor (MaskType type) const |
| | Colors of slice marks controls, setters update texture.
|
| void | MR::MarkedVoxelSlice::setColor (const Color &color, MaskType type) |
| Mark & | MR::MarkedVoxelSlice::getMark (MaskType type) |
| const Mark & | MR::MarkedVoxelSlice::getMark (MaskType type) const |
| | Returns color and mask(VoxelBitSet of whole voxel object) of given type.
|
| void | MR::MarkedVoxelSlice::setMark (const Mark &mark, MaskType type) |
| | Sets color and mask(VoxelBitSet of whole voxel object) of given type, updates texture.
|
| std::vector< Mark > & | MR::MarkedVoxelSlice::getCustomBackgroundMarks () |
| const std::vector< Mark > & | MR::MarkedVoxelSlice::getCustomBackgroundMarks () const |
| void | MR::MarkedVoxelSlice::setCustomBackgroundMarks (const std::vector< Mark > &backgroundMarks) |
| | Sets background colors and masks(VoxelBitSet of whole voxel object) of given type, updates texture.
|
| std::vector< Mark > & | MR::MarkedVoxelSlice::getCustomForegroundMarks () |
| const std::vector< Mark > & | MR::MarkedVoxelSlice::getCustomForegroundMarks () const |
| void | MR::MarkedVoxelSlice::setCustomForegroundMarks (const std::vector< Mark > &foregroundMarks) |
| | Sets foreground colors and masks(VoxelBitSet of whole voxel object) of given type, updates texture.
|
| SlicePlane | MR::MarkedVoxelSlice::getActivePlane () const |
| | Active plane (YZ, ZX or XY) controls, setters update texture.
|
| void | MR::MarkedVoxelSlice::setActivePlane (SlicePlane plane) |
| const Vector3i & | MR::MarkedVoxelSlice::getActiveVoxel () const |
| void | MR::MarkedVoxelSlice::setActiveVoxel (const Vector3i &voxel) |
| float | MR::MarkedVoxelSlice::getMin () const |
| | Slice normalization parameters, setters update texture.
|
| void | MR::MarkedVoxelSlice::setMin (float min) |
| float | MR::MarkedVoxelSlice::getMax () const |
| void | MR::MarkedVoxelSlice::setMax (float max) |
| const Box3i & | MR::MarkedVoxelSlice::getActiveBox () const |
| | Returns current active box of slice.
|
| void | MR::MarkedVoxelSlice::setActiveBox (const Box3i &box) |
| | Updates active box of slice, do not affect ObjectVoxels, updates texture.
|
| const Parameters & | MR::MarkedVoxelSlice::getParameters () const |
| | Get all parameters as one structure.
|
| void | MR::MarkedVoxelSlice::setParameters (const Parameters ¶ms) |
| | Set all parameters as one structure, updates texture.
|
| void | MR::MarkedVoxelSlice::forceUpdate () |
| | Set current slice with marks to texture, do not abuse this.
|
| void | MR::BoundarySelectionWidget::enable (bool isEnabled) |
| | enable or disable widget
|
| void | MR::BoundarySelectionWidget::create (BoundarySelectionWidgetCallBack onBoundarySelected, BoundarySelectionWidgetChecker isObjectValidToPick) |
| void | MR::BoundarySelectionWidget::onObjectChange_ () |
| | meshChangedSignal processor
|
| void | MR::BoundarySelectionWidget::reset () |
| | reset widget, clear internal variables and detach from signals.
|
| bool | MR::BoundarySelectionWidget::selectHole (std::shared_ptr< MR::ObjectMeshHolder > object, int index) |
| | select one of the holes. Return true on success.
|
| void | MR::BoundarySelectionWidget::clear () |
| | clear selection
|
| std::pair< std::shared_ptr< MR::ObjectMeshHolder >, EdgeId > | MR::BoundarySelectionWidget::getSelectHole () const |
| | returns pair of selected hole ( in Edge representations) and objects on which particular hole is present
|
| std::vector< MR::Vector3f > | MR::BoundarySelectionWidget::getPointsForSelectedHole () const |
| | collect and return vector of points ( verts coord ) for all edges in selected mesh boundary
|
| | MR::ChangeBoundarySelectionHistoryAction::ChangeBoundarySelectionHistoryAction (std::string name, BoundarySelectionWidget &widget, std::shared_ptr< ObjectMeshHolder > object, int index) |
| std::string | MR::ChangeBoundarySelectionHistoryAction::name () const override |
| | HistoryAction.
|
| void | MR::ChangeBoundarySelectionHistoryAction::action (Type type) override |
| | This function is called on history action (undo, redo, etc.)
|
| size_t | MR::ChangeBoundarySelectionHistoryAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| | MR::MeshModifier::MeshModifier (std::string name, StatePluginTabs tab=StatePluginTabs::Mesh) |
| virtual | MR::MeshModifier::~MeshModifier ()=default |
| virtual bool | MR::MeshModifier::action () override |
| | returns true if state of item changed
|
| bool | MR::MeshModifier::modify (const std::vector< std::shared_ptr< VisualObject > > &selectedObjects) |
| | RenderObject here for auto update.
|
| StatePluginTabs | MR::MeshModifier::getTab () const |
| bool | MR::MeshModifier::checkStringMask (const std::string &mask) const |
| | check if search mask satisfies for this modifier
|
| std::string | MR::getMeshVerticesShader () |
| std::string | MR::getMeshFragmentShader (bool gl4, ShaderTransparencyMode mode, bool msaaEnabled) |
| std::string | MR::getMeshFragmentShaderArgumetsBlock () |
| std::string | MR::getMeshFragmentShaderColoringBlock () |
| | MR::ModalDialog::ModalDialog (std::string label, ModalDialogSettings settings) |
| bool | MR::ModalDialog::beginPopup () |
| void | MR::ModalDialog::endPopup () |
| | Render the dialog's footer ("Don't show again" checkbox) and finish the dialog.
|
| static float | MR::ModalDialog::windowWidth () |
| | Returns the current window width in pixels.
|
| std::string | MR::getMouseModeString (MouseMode mode) |
| | MR::MouseController::MR_ADD_CTOR_DELETE_MOVE (MouseController) |
| void | MR::MouseController::connect () |
| | called in Viewer init, connects to Viewer mouse signals
|
| void | MR::MouseController::setMouseControl (const MouseControlKey &key, MouseMode mode) |
| const Vector2i & | MR::MouseController::getDownMousePos () const |
| | returns previous mouse down (if several mouse buttons are down returns position of first one)
|
| const Vector2i & | MR::MouseController::getMousePos () const |
| | returns current mouse position
|
| bool | MR::MouseController::isPressed (MouseButton button) const |
| | returns state of mouse button
|
| bool | MR::MouseController::isPressedAny () const |
| | returns true if any mouse btn is down
|
| bool | MR::MouseController::isCursorInside () const |
| bool | MR::MouseController::isDropOldEventOnNewActive () const |
| | dropOldEventsOnNew flag - drop active mouse down state (calling mouseUp) if new mouse event happens
|
| void | MR::MouseController::dropOldEventsOnNew (bool on) |
| std::optional< MouseControlKey > | MR::MouseController::findControlByMode (MouseMode mode) const |
| | returns nullopt if no control is present for given mode, otherwise returns associated control
|
| static std::string | MR::MouseController::getControlString (const MouseControlKey &key) |
| | make string from mouse button and modifier
|
| static int | MR::MouseController::mouseAndModToKey (const MouseControlKey &key) |
| | cast mouse button and modifier to simple int key
|
| static MouseControlKey | MR::MouseController::keyToMouseAndMod (int key) |
| | cast simple int key to mouse button and modifier
|
| void | MR::MouseController::setTrasformModifierCb (std::function< void(AffineXf3f &)> cb) |
| | set callback to modify view transform before it is applied to viewport
|
| void | MR::MouseController::setFOVModifierCb (std::function< void(float &)> cb) |
| | set callback to modify new field of view before it is applied to viewport
|
| int | MR::MouseController::getMouseConflicts () |
| | MR::MoveObjectByMouseImpl::MoveObjectByMouseImpl ()=default |
| virtual | MR::MoveObjectByMouseImpl::~MoveObjectByMouseImpl ()=default |
| int | MR::MoveObjectByMouseImpl::minDistance () const |
| void | MR::MoveObjectByMouseImpl::setMinDistance (int minDistance) |
| void | MR::MoveObjectByMouseImpl::onDrawDialog () const |
| bool | MR::MoveObjectByMouseImpl::onMouseDown (MouseButton button, int modifiers) |
| bool | MR::MoveObjectByMouseImpl::onMouseMove (int x, int y) |
| bool | MR::MoveObjectByMouseImpl::onMouseUp (MouseButton button, int modifiers) |
| bool | MR::MoveObjectByMouseImpl::isMoving () const |
| void | MR::MoveObjectByMouseImpl::cancel () |
| void | MR::MoveObjectByMouseImpl::enableHistory (bool history) |
| | enables or disables adding history to viewer history store by this tool
|
| bool | MR::MoveObjectByMouseImpl::isHistoryEnabled () const |
| | returns true if appending history to viewer history store is enabled in this tool
|
| virtual ObjAndPick | MR::MoveObjectByMouseImpl::pickObjects_ (std::vector< std::shared_ptr< Object > > &objects, int modifiers) const |
| virtual TransformMode | MR::MoveObjectByMouseImpl::modeFromPickModifiers_ (int modifiers) const |
| | Helper function to determine TransformMode based on modifiers.
|
| virtual TransformMode | MR::MoveObjectByMouseImpl::modeFromPick_ (MouseButton button, int modifiers) const |
| | this function is called from onMouseDown to verify if pick should proceed, if None is returned - onMouseDown is canceled
|
| virtual void | MR::MoveObjectByMouseImpl::setStartPoint_ (const ObjAndPick &pick, Vector3f &startPoint) const |
| | startPoint - a point under cursor for transform calculation, can be the picked point or else (world coordinates)
|
| virtual void | MR::MoveObjectByMouseImpl::setCenterPoint_ (const std::vector< std::shared_ptr< Object > > &objects, Vector3f ¢erPoint) const |
| | centerPoint - a point that will be used as center of rotation/scaling in world space
|
| virtual Plane3f | MR::MoveObjectByMouseImpl::calcControlPlane_ (const Viewport &vp, const Vector3f &viewportCenterPoint, const Vector3f &xfCenterPoint) const |
| Box3f | MR::MoveObjectByMouseImpl::getBbox_ (const std::vector< std::shared_ptr< Object > > &objects) const |
| | MR::ObjectImGuiLabel::ObjectImGuiLabel () |
| | MR::ObjectImGuiLabel::ObjectImGuiLabel (ObjectImGuiLabel &&) noexcept=default |
| ObjectImGuiLabel & | MR::ObjectImGuiLabel::operator= (ObjectImGuiLabel &&) noexcept=default |
| static constexpr const char * | MR::ObjectImGuiLabel::StaticTypeName () noexcept |
| const char * | MR::ObjectImGuiLabel::typeName () const override |
| bool | MR::ObjectImGuiLabel::hasVisualRepresentation () const override |
| | does the object have any visual representation (visible points, triangles, edges, etc.), no considering child objects
|
| std::shared_ptr< Object > | MR::ObjectImGuiLabel::clone () const override |
| std::shared_ptr< Object > | MR::ObjectImGuiLabel::shallowClone () const override |
| | MR::ObjectImGuiLabel::ObjectImGuiLabel (ProtectedStruct, const ObjectImGuiLabel &obj) |
| const std::string & | MR::ObjectImGuiLabel::getLabel () const |
| void | MR::ObjectImGuiLabel::setLabel (std::string value) |
| | MR::ObjectImGuiLabel::ObjectImGuiLabel (const ObjectImGuiLabel &other)=default |
| void | MR::ObjectImGuiLabel::swapBase_ (Object &other) override |
| | swaps this object with other
|
| void | MR::ObjectImGuiLabel::serializeFields_ (Json::Value &root) const override |
| void | MR::ObjectImGuiLabel::deserializeFields_ (const Json::Value &root) override |
| void | MR::ObjectImGuiLabel::setupRenderObject_ () const override |
| void | MR::excludeLoneEdgesWithHistory (const std::shared_ptr< ObjectMesh > &objMesh) |
| void | MR::excludeAllEdgesWithHistory (const std::shared_ptr< ObjectMesh > &objMesh) |
| void | MR::mapEdgesWithHistory (const std::shared_ptr< ObjectMesh > &objMesh, const WholeEdgeMap &emap) |
| void | MR::mapEdgesWithHistory (const std::shared_ptr< ObjectMesh > &objMesh, const WholeEdgeHashMap &emap) |
| void | MR::mapEdgesWithHistory (const std::shared_ptr< ObjectMesh > &objMesh, const UndirectedEdgeBMap &emap) |
| void | MR::packPointsWithHistory (const std::shared_ptr< ObjectPoints > &objPoints, Reorder reoder) |
| void | MR::packPointsWithHistory (const std::shared_ptr< ObjectPoints > &objPoints, Reorder reoder, VertBitSet newValidVerts) |
| virtual | MR::ITransformControls::~ITransformControls ()=default |
| const Vector3f & | MR::ITransformControls::getCenter () const |
| | get center of the widget in local space
|
| void | MR::ITransformControls::setCenter (const Vector3f ¢er) |
| virtual float | MR::ITransformControls::getRadius () const |
| | should return current radius of the widget
|
| virtual void | MR::ITransformControls::updateSizeInPixel () |
| | should calculates and sets the matrix to set the size in pixels
|
| void | MR::ITransformControls::setTransformModesValidator (TransformModesValidator validator) |
| void | MR::ITransformControls::setPickThrough (bool on) |
| | Enables or disables pick through mode, in this mode controls will be picked even if they are occluded by other objects.
|
| bool | MR::ITransformControls::getPickThrough () const |
| ControlBit | MR::ITransformControls::getHoveredControl () const |
| | Returns currently hovered control.
|
| virtual void | MR::ITransformControls::init (std::shared_ptr< Object > parent)=0 |
| | Called once on widget created to init internal objects.
|
| virtual void | MR::ITransformControls::update ()=0 |
| void | MR::ITransformControls::hover () |
| | Called for hover checks.
|
| void | MR::ITransformControls::stopModify () |
| | This is called to stop drawing active visualization when modification is stopped.
|
| void | MR::ITransformControls::updateVisualTransformMode (ControlBit showMask, ViewportMask viewportMask, const AffineXf3f &xf) |
| | Called each frame for each viewport to update available transformation modes.
|
| virtual void | MR::ITransformControls::updateTranslation (Axis ax, const Vector3f &startMove, const Vector3f &endMove, ViewportId vpId)=0 |
| | One have to implement these functions to have visualization of translation and rotation.
|
| virtual void | MR::ITransformControls::updateRotation (Axis ax, const AffineXf3f &xf, float startAngle, float endAngle, ViewportId vpId)=0 |
| | xf - widget current xf
|
| | MR::ITransformControls::ChangeCenterAction::ChangeCenterAction (const std::string &name, ITransformControls &controls) |
| virtual std::string | MR::ITransformControls::ChangeCenterAction::name () const override |
| virtual void | MR::ITransformControls::ChangeCenterAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ITransformControls::ChangeCenterAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| virtual ControlBit | MR::ITransformControls::hover_ (bool pickThrough)=0 |
| virtual void | MR::ITransformControls::stopModify_ ()=0 |
| virtual void | MR::ITransformControls::updateVisualTransformMode_ (ControlBit showMask, ViewportMask viewportMask)=0 |
| void | MR::TransformControls::VisualParams::update (const Box3f &box) |
| | updates radius and width with given box
|
| void | MR::TransformControls::setVisualParams (const VisualParams ¶ms) |
| const VisualParams & | MR::TransformControls::getVisualParams () const |
| virtual | MR::TransformControls::~TransformControls () |
| virtual void | MR::TransformControls::init (std::shared_ptr< Object > parent) override |
| | Called once on widget created to init internal objects.
|
| virtual void | MR::TransformControls::update () override |
| virtual float | MR::TransformControls::getRadius () const override |
| | should return current radius of the widget
|
| void | MR::TransformControls::setRadius (float radius) |
| float | MR::TransformControls::getWidth () const |
| void | MR::TransformControls::setWidth (float width) |
| | set width for this widget
|
| void | MR::TransformControls::setSizeType (VisualParams::SizeType type) |
| | sets the type of widget size units ( recalculates the current values into new units of measurement )
|
| virtual void | MR::TransformControls::updateSizeInPixel () override |
| | calculates and sets the matrix to set the size in pixels
|
| virtual void | MR::TransformControls::updateTranslation (Axis ax, const Vector3f &startMove, const Vector3f &endMove, ViewportId vpId) override |
| | One have to implement these functions to have visualization of translation and rotation.
|
| virtual void | MR::TransformControls::updateRotation (Axis ax, const AffineXf3f &xf, float startAngle, float endAngle, ViewportId vpId) override |
| | xf - widget current xf
|
| static TransformModesValidator | MR::TransformControls::ThresholdDotValidator (float thresholdDot) |
| | returns TransformModesValidator by threshold dot value (this value is duty for hiding widget controls that have small projection on screen)
|
| void | MR::ObjectTransformWidget::create (const Box3f &box, const AffineXf3f &xf, std::shared_ptr< ITransformControls > controls={}) |
| void | MR::ObjectTransformWidget::reset () |
| ControlBit | MR::ObjectTransformWidget::getTransformModeMask (ViewportId id={}) const |
| | Returns current transform mode mask.
|
| void | MR::ObjectTransformWidget::setTransformMode (ControlBit mask, ViewportId id={}) |
| | Sets transform mode mask (enabling or disabling corresponding widget controls)
|
| AxisTransformMode | MR::ObjectTransformWidget::getAxisTransformMode () const |
| | Returns current axis transform mode (translate/scale object while dragging an axis)
|
| void | MR::ObjectTransformWidget::setAxisTransformMode (AxisTransformMode mode) |
| | Sets current axis transform mode (translate/scale object while dragging an axis)
|
| std::shared_ptr< Object > | MR::ObjectTransformWidget::getRootObject () const |
| | Returns root object of widget.
|
| std::shared_ptr< ITransformControls > | MR::ObjectTransformWidget::getControls () const |
| | Returns controls object, that visualize widget.
|
| template<typename T> |
| std::shared_ptr< T > | MR::ObjectTransformWidget::getControlsAs () const |
| void | MR::ObjectTransformWidget::setControlsXf (const AffineXf3f &xf, ViewportId id={}) |
| AffineXf3f | MR::ObjectTransformWidget::getControlsXf (ViewportId id={}) const |
| void | MR::ObjectTransformWidget::followObjVisibility (const std::weak_ptr< Object > &obj) |
| void | MR::ObjectTransformWidget::setScaleTooltipCallback (std::function< void(float)> callback) |
| | Sets callback that will be called in draw function during scaling with current scale arg.
|
| void | MR::ObjectTransformWidget::setTranslateTooltipCallback (std::function< void(float)> callback) |
| | Sets callback that will be called in draw function during translation with current shift arg.
|
| void | MR::ObjectTransformWidget::setRotateTooltipCallback (std::function< void(float)> callback) |
| | Sets callback that will be called in draw function during rotation with current angle in rad.
|
| void | MR::ObjectTransformWidget::setStopModifyCallback (std::function< void()> callback) |
| | Sets callback that will be called when modification of widget stops.
|
| void | MR::ObjectTransformWidget::setStartModifyCallback (std::function< void()> callback) |
| | Sets callback that will be called when modification of widget starts.
|
| void | MR::ObjectTransformWidget::setAddXfCallback (std::function< void(const AffineXf3f &)> callback) |
| | Sets callback that will be called when widget gets additive transform.
|
| void | MR::ObjectTransformWidget::setApproveXfCallback (std::function< bool(const AffineXf3f &)> callback) |
| | MR::ObjectTransformWidget::ChangeXfAction::ChangeXfAction (const std::string &name, ObjectTransformWidget &widget) |
| virtual std::string | MR::ObjectTransformWidget::ChangeXfAction::name () const override |
| virtual void | MR::ObjectTransformWidget::ChangeXfAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::ObjectTransformWidget::ChangeXfAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| Expected< LoadedObject > | MR::makeObjectTreeFromFolder (const std::filesystem::path &folder, bool dicomOnly, const ProgressCallback &callback={}) |
| | load all supported files from given folder in new container object
|
| Expected< LoadedObject > | MR::makeObjectTreeFromZip (const std::filesystem::path &zipPath, const ProgressCallback &callback={}) |
| | load all supported files from given zip-archive in new container object
|
| static const std::vector< Color > & | MR::Palette::BlueGreenRedColors () |
| static const std::vector< Color > & | MR::Palette::GreenRedColors () |
| | simpler palette colors: from green to red
|
| | MR::Palette::Palette (const std::vector< Color > &colors) |
| void | MR::Palette::setBaseColors (const std::vector< Color > &colors) |
| | Set base palette colors colors.size() should be more or equal 2 for discrete palette using vector of colors calculated by mixing the base colors i.e. base {blue, red} -> discrete 3 {blue, 0.5*blue + 0.5*red, red}.
|
| void | MR::Palette::setRangeMinMax (float min, float max) |
| | set range limits for palette (need for find color by value) all palette colors are evenly distributed between min and max
|
| void | MR::Palette::setRangeMinMaxNegPos (float minNeg, float maxNeg, float minPos, float maxPos) |
| | set range limits for palette (need for find color by value) two half palette colors are evenly distributed between MinNeg / MaxNeg and MinPos / MaxPos for values between MaxNeg / MinPos return one color (from center palette)
|
| void | MR::Palette::setDiscretizationNumber (int discretization) |
| | set number of different colors for discrete palette
|
| void | MR::Palette::setFilterType (FilterType type) |
| | set palette type (linear / discrete)
|
| void | MR::Palette::draw (const std::string &windowName, const ImVec2 &pose, const ImVec2 &size, bool onlyTopHalf=false) |
| void | MR::Palette::draw (ImDrawList *drawList, float scaling, const ImVec2 &pos, const ImVec2 &size, const Color &labelBgColor, bool onlyTopHalf=false) const |
| void | MR::Palette::draw (ImDrawList *drawList, float scaling, const ImVec2 &pos, const ImVec2 &size, bool onlyTopHalf=false) const |
| | MR::Palette::Label::Label ()=default |
| | MR::Palette::Label::Label (float val, std::string text) |
| void | MR::Palette::resetLabels () |
| | reset labels to standard view
|
| void | MR::Palette::setCustomLabels (const std::vector< Label > &labels) |
| | set labels manually
|
| void | MR::Palette::setLabelsVisible (bool visible) |
| | set labels visible
|
| bool | MR::Palette::loadFromJson (const Json::Value &root) |
| void | MR::Palette::saveCurrentToJson (Json::Value &root) const |
| | Serialize this palette data to JsonValue.
|
| Color | MR::Palette::getColor (float relativeValue) const |
| Color | MR::Palette::getInvalidColor () const |
| | return invalid color
|
| VertColors | MR::Palette::getVertColors (const VertScalars &values, const VertBitSet ®ion, const VertBitSet *valids, const VertBitSet *validsForStats) |
| const MeshTexture & | MR::Palette::getTexture () const |
| float | MR::Palette::getRelativePos (float val) const |
| | get relative position in [0,1], where 0 is for minimum and 1 is for maximum
|
| UVCoord | MR::Palette::getUVcoord (float val, bool valid=true) const |
| static VertPredicate | MR::Palette::predFromBitSet (const VertBitSet *bits) |
| VertUVCoords | MR::Palette::getUVcoords (const VertScalars &values, const VertBitSet ®ion, const VertPredicate &valids={}, const VertPredicate &validsForStats={}) |
| VertUVCoords | MR::Palette::getUVcoords (const VertScalars &values, const VertBitSet ®ion, const VertBitSet *valids, const VertBitSet *validsForStats=nullptr) |
| const Parameters & | MR::Palette::getParameters () const |
| float | MR::Palette::getRangeMin () const |
| | returns minimum value in the palette's range
|
| float | MR::Palette::getRangeMax () const |
| | returns maximum value in the palette's range
|
| float | MR::Palette::getRangeSq () const |
| | returns minimum squared value, not smaller than all squared values of palette's range
|
| std::string | MR::Palette::getStringValue (float value) const |
| | returns formated string for this value of palette
|
| int | MR::Palette::getMaxLabelCount () |
| | returns maximal label count
|
| void | MR::Palette::setMaxLabelCount (int val) |
| | sets maximal label count
|
| void | MR::Palette::setLegendLimits (const MinMaxf &limits) |
| | set legend limits. if min > max - limits are disabled
|
| bool | MR::Palette::isHistogramEnabled () const |
| | Histogram:
|
| int | MR::Palette::getNumHistogramBuckets () const |
| void | MR::Palette::setNumHistogramBuckets (int n) |
| int | MR::Palette::getDefaultNumHistogramBuckets () const |
| | Returns the recommended argument for setNumHistogramBuckets().
|
| bool | MR::Palette::isDiscretizationPercentagesEnabled () const |
| | Should we maintain the percentages of distances in each discretization step?
|
| void | MR::Palette::enableDiscretizationPercentages (bool enable) |
| static void | MR::Palette::resizeCallback_ (ImGuiSizeCallbackData *data) |
| static const std::vector< std::string > & | MR::PalettePresets::getPresetNames () |
| | gets names of existing presets
|
| static bool | MR::PalettePresets::loadPreset (const std::string &name, Palette &palette) |
| static Expected< void > | MR::PalettePresets::savePreset (const std::string &name, const Palette &palette) |
| | saves given palette to preset with given name
|
| static std::filesystem::path | MR::PalettePresets::getPalettePresetsFolder () |
| | returns path to presets folder
|
| HoleEdgePoint | MR::findClosestToMouseHoleEdge (const Vector2i &mousePos, const std::shared_ptr< ObjectMeshHolder > &objMesh, const std::vector< EdgeId > &holeRepresentativeEdges, float accuracy=5.5f, bool attractToVert=false, float cornerAccuracy=10.5f) |
| HoleEdgePoint | MR::findClosestToMouseEdge (const Vector2i &mousePos, const std::vector< std::shared_ptr< ObjectLinesHolder > > &objsLines, float accuracy=5.5f) |
| HoleEdgePoint | MR::findClosestToMouseEdge (const Vector2i &mousePos, const std::vector< std::shared_ptr< ObjectLines > > &objsLines, float accuracy=5.5f) |
| | MR::PickPointManager::PickPointManager () |
| | create an object and starts listening for mouse events
|
| | MR::PickPointManager::~PickPointManager () |
| | destroy this and remove the undo/redo actions referring this from the history.
|
| const SurfaceContour & | MR::PickPointManager::getSurfaceContour (const std::shared_ptr< VisualObject > &obj) |
| | return contour for specific object (creating new one if necessary)
|
| const SurfaceContours & | MR::PickPointManager::getSurfaceContours () const |
| | return all contours, i.e. per object unorderd_map of ordered surface points [vector].
|
| bool | MR::PickPointManager::isClosedContour (const std::shared_ptr< VisualObject > &obj) const |
| | check whether the contour is closed for a particular object.
|
| size_t | MR::PickPointManager::numPickPoints (const std::shared_ptr< VisualObject > &obj) const |
| | returns the total number of pick points (including extra point if the contour is closed) on given object
|
| std::shared_ptr< SurfacePointWidget > | MR::PickPointManager::getPointWidget (const std::shared_ptr< VisualObject > &obj, int index) const |
| | returns point widget by index from given object or nullptr if no such widget exists
|
| int | MR::PickPointManager::getPointIndex (const std::shared_ptr< VisualObject > &obj, SurfacePointWidget &pointWidget) const |
| | returns index of given point widget on given object or -1 if this widget is not from given object
|
| SurfacePointWidget * | MR::PickPointManager::draggedPointWidget () const |
| | returns point widget currently dragged by mouse
|
| bool | MR::PickPointManager::appendPoint (const std::shared_ptr< VisualObject > &obj, const PickedPoint &triPoint, bool startDragging=false) |
| bool | MR::PickPointManager::insertPoint (const std::shared_ptr< VisualObject > &obj, int index, const PickedPoint &triPoint, bool startDragging=false) |
| bool | MR::PickPointManager::removePoint (const std::shared_ptr< VisualObject > &obj, int pickedIndex) |
| | Remove point with pickedIndex index from contour connected with obj.
|
| bool | MR::PickPointManager::closeContour (const std::shared_ptr< VisualObject > &obj, bool makeClosed=true) |
| FullState | MR::PickPointManager::getFullState () const |
| | returns the state of this
|
| void | MR::PickPointManager::clear () |
| | removes all points from all objects
|
| void | MR::PickPointManager::setFullState (FullState s) |
| | removes all current points, then adds pick points on all objects as prescribed by given state
|
| void | MR::PlaneWidget::updatePlane (const Plane3f &plane, bool updateCameraRotation=true) |
| void | MR::PlaneWidget::updateBox (const Box3f &box, bool updateCameraRotation=true) |
| void | MR::PlaneWidget::definePlane () |
| | defines plane, adds plane object to scene
|
| void | MR::PlaneWidget::undefinePlane () |
| | undefines plane, removes PlaneObject from scene
|
| void | MR::PlaneWidget::setLocalMode (bool on) |
| bool | MR::PlaneWidget::isInLocalMode () const |
| void | MR::PlaneWidget::setLocalShift (float shift) |
| float | MR::PlaneWidget::getLocalShift () const |
| const Plane3f & | MR::PlaneWidget::getPlane () const |
| | returns plane
|
| const std::shared_ptr< ObjectMesh > & | MR::PlaneWidget::getPlaneObject () const |
| | returns plane object
|
| void | MR::PlaneWidget::setOnPlaneUpdateCallback (OnPlaneUpdateCallback callback) |
| const Box3f & | MR::PlaneWidget::box () const |
| | returns box which is used to calculate size and position of the visualized plane part
|
| bool | MR::PlaneWidget::importPlaneMode () const |
| | returns the flag importPlaneMode_, if it is true you can use a plain object from the scene
|
| void | MR::PlaneWidget::setImportPlaneMode (bool val) |
| | sets the flag importPlaneMode_, if it is true you can use a plain object from the scene
|
| bool | MR::PlaneWidget::getShowPlaneByDefault () const |
| | returns the flag that is true if the plane is shown by default
|
| void | MR::PlaneWidget::setShowPlaneByDefault (bool val) |
| | sets the flag that is true if the plane is shown by default
|
| std::string | MR::getPointsVertexShader () |
| std::string | MR::getPointsFragmentShader (ShaderTransparencyMode mode) |
| void | MR::ProgressBar::setup () |
| | this function should be called only once for each frame (it is called in MR::Menu (MR::RibbonMenu))
|
| void | MR::ProgressBar::onFrameEnd () |
| | call this function on frame end
|
| void | MR::ProgressBar::order (const char *name, const std::function< void()> &task, int taskCount=1) |
| void | MR::ProgressBar::orderWithMainThreadPostProcessing (const char *name, TaskWithMainThreadPostProcessing task, int taskCount=1) |
| void | MR::ProgressBar::orderWithManualFinish (const char *name, std::function< void()> task, int taskCount=1) |
| bool | MR::ProgressBar::isCanceled () |
| bool | MR::ProgressBar::isFinished () |
| float | MR::ProgressBar::getProgress () |
| float | MR::ProgressBar::getLastOperationTime () |
| | returns time of last operation in seconds, returns -1.0f if no operation was performed
|
| const std::string & | MR::ProgressBar::getLastOperationTitle () |
| | returns title of the last operation
|
| void | MR::ProgressBar::nextTask () |
| void | MR::ProgressBar::nextTask (const char *s) |
| void | MR::ProgressBar::setTaskCount (int n) |
| void | MR::ProgressBar::forceSetTaskName (std::string taskName) |
| | set the current task's name without auto-updating progress value
|
| void | MR::ProgressBar::resetTaskName () |
| void | MR::ProgressBar::finish () |
| bool | MR::ProgressBar::isOrdered () |
| | returns true if progress bar was ordered and not finished
|
| bool | MR::ProgressBar::setProgress (float p) |
| bool | MR::ProgressBar::callBackSetProgress (float p) |
| bool | MR::ProgressBar::simpleCallBackSetProgress (float p) |
| void | MR::ProgressBar::printTimingTree (double minTimeSec=0.1) |
| template<typename F, typename... Args> |
| void | MR::pythonAppendOrRun (F func, Args &&... args) |
| template<typename R, typename... Args> |
| auto | MR::pythonRunFromGUIThread (std::function< R(Args...)> &&f) -> std::function< void(Args...)> |
| template<typename F> |
| auto | MR::pythonRunFromGUIThread (F &&f) |
| template<typename R, typename T, typename... Args> |
| auto | MR::pythonRunFromGUIThread (R(T::*memFunction)(Args...)) |
| | MR::RecentFilesStore::RecentFilesStore ()=default |
| | MR::RecentFilesStore::RecentFilesStore (std::string appName, int capacity=10) |
| void | MR::RecentFilesStore::storeFile (const std::filesystem::path &file) const |
| std::vector< std::filesystem::path > | MR::RecentFilesStore::getStoredFiles () const |
| | Returns filenames from storage.
|
| int | MR::RecentFilesStore::getCapacity () const |
| | Returns maximum size of recently opened files stack.
|
| boost::signals2::connection | MR::RecentFilesStore::onUpdate (const boost::function< void(const FileNamesStack &files)> &slot, boost::signals2::connect_position position=boost::signals2::at_back) |
| | Connects given slot to receive signal on every update of this store.
|
| | MR::BasicClickableRectUiRenderTask::BasicClickableRectUiRenderTask ()=default |
| | MR::BasicClickableRectUiRenderTask::BasicClickableRectUiRenderTask (const BasicClickableRectUiRenderTask &other) |
| | Don't assign the memebers (except the base), because we want to preserve the state across frames.
|
| BasicClickableRectUiRenderTask & | MR::BasicClickableRectUiRenderTask::operator= (const BasicClickableRectUiRenderTask &other) |
| virtual | MR::BasicClickableRectUiRenderTask::~BasicClickableRectUiRenderTask ()=default |
| virtual void | MR::BasicClickableRectUiRenderTask::onClick ()=0 |
| | This is called when the click happens.
|
| void | MR::BasicClickableRectUiRenderTask::earlyBackwardPass (const BackwardPassParams &backParams) override |
| | This is what ultimately calls onClick() if the certain conditions hold.
|
| | MR::RenderResetDirtyComponent::RenderResetDirtyComponent (const VisualObject &object) |
| virtual bool | MR::RenderResetDirtyComponent::render (const ModelRenderParams &) |
| | only clears dirty flag of the object
|
| virtual void | MR::RenderResetDirtyComponent::renderPicker (const ModelBaseRenderParams &, unsigned) |
| virtual size_t | MR::RenderResetDirtyComponent::heapBytes () const |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::RenderResetDirtyComponent::glBytes () const |
| | returns the amount of memory this object allocated in OpenGL
|
| | MR::RenderDimensions::PointTask::PointTask () |
| | MR::RenderDimensions::PointTask::PointTask (const UiRenderParams &uiParams, const AffineXf3f &xf, Color color, const PointParams ¶ms) |
| void | MR::RenderDimensions::PointTask::renderPass () override |
| | This is the main rendering pass.
|
| void | MR::RenderDimensions::PointTask::onClick () override |
| | Implement BasicClickableRectUiRenderTask:
|
| | MR::RenderDimensions::RadiusTask::RadiusTask () |
| | MR::RenderDimensions::RadiusTask::RadiusTask (const UiRenderParams &uiParams, const AffineXf3f &xf, Color color, const RadiusParams ¶ms) |
| void | MR::RenderDimensions::RadiusTask::renderPass () override |
| | This is the main rendering pass.
|
| void | MR::RenderDimensions::RadiusTask::onClick () override |
| | Implement BasicClickableRectUiRenderTask:
|
| | MR::RenderDimensions::AngleTask::AngleTask () |
| | MR::RenderDimensions::AngleTask::AngleTask (const UiRenderParams &uiParams, const AffineXf3f &xf, Color color, const AngleParams ¶ms) |
| void | MR::RenderDimensions::AngleTask::renderPass () override |
| | This is the main rendering pass.
|
| void | MR::RenderDimensions::AngleTask::onClick () override |
| | Implement BasicClickableRectUiRenderTask:
|
| | MR::RenderDimensions::LengthTask::LengthTask () |
| | MR::RenderDimensions::LengthTask::LengthTask (const UiRenderParams &uiParams, const AffineXf3f &xf, Color color, const LengthParams ¶ms) |
| void | MR::RenderDimensions::LengthTask::renderPass () override |
| | This is the main rendering pass.
|
| void | MR::RenderDimensions::LengthTask::onClick () override |
| | Implement BasicClickableRectUiRenderTask:
|
| | MR::GlBuffer::GlBuffer ()=default |
| | MR::GlBuffer::GlBuffer (const GlBuffer &)=delete |
| | MR::GlBuffer::GlBuffer (GlBuffer &&r) |
| | MR::GlBuffer::~GlBuffer () |
| GlBuffer & | MR::GlBuffer::operator= (const GlBuffer &)=delete |
| GlBuffer & | MR::GlBuffer::operator= (GlBuffer &&r) |
| auto | MR::GlBuffer::getId () const |
| bool | MR::GlBuffer::valid () const |
| size_t | MR::GlBuffer::size () const |
| void | MR::GlBuffer::gen () |
| | generates new buffer
|
| void | MR::GlBuffer::del () |
| | deletes the buffer
|
| void | MR::GlBuffer::bind (GLenum target) |
| | binds current buffer to OpenGL context
|
| void | MR::GlBuffer::loadData (GLenum target, const char *arr, size_t arrSize) |
| | creates GL data buffer using given data and binds it
|
| template<typename T> |
| void | MR::GlBuffer::loadData (GLenum target, const T *arr, size_t arrSize) |
| template<typename C> |
| void | MR::GlBuffer::loadData (GLenum target, const C &cont) |
| void | MR::GlBuffer::loadDataOpt (GLenum target, bool refresh, const char *arr, size_t arrSize) |
| | binds current buffer to OpenGL context, optionally refreshing its data
|
| template<typename T> |
| void | MR::GlBuffer::loadDataOpt (GLenum target, bool refresh, const T *arr, size_t arrSize) |
| template<typename C> |
| void | MR::GlBuffer::loadDataOpt (GLenum target, bool refresh, const C &cont) |
| | MR::GlTexture2::GlTexture2 () |
| static Vector3i | MR::GlTexture2::ToResolution (const Vector2i &value) |
| | MR::GlTexture3::GlTexture3 () |
| | MR::GlTexture2DArray::GlTexture2DArray () |
| GLint | MR::bindVertexAttribArray (const BindVertexAttribArraySettings &settings) |
| template<typename T, template< typename, typename... > class C, typename... args> |
| GLint | MR::bindVertexAttribArray (const GLuint program_shader, const char *name, GlBuffer &buf, const C< T, args... > &V, int baseTypeElementsNumber, bool refresh, bool forceUse=false) |
| template<typename T, std::size_t N> |
| GLint | MR::bindVertexAttribArray (const GLuint program_shader, const char *name, GlBuffer &buf, const std::array< T, N > &V, int baseTypeElementsNumber, bool refresh, bool forceUse=false) |
| int | MR::getDepthFunctionLess (DepthFunction funcType) |
| int | MR::getDepthFunctionLEqual (DepthFunction funcType) |
| void | MR::QuadTextureVertexObject::gen () |
| | generates simple quad for rendering
|
| void | MR::QuadTextureVertexObject::bind () |
| | binds simple quad vertex data
|
| void | MR::QuadTextureVertexObject::del () |
| | removes this object
|
| void | MR::FramebufferData::gen (const Vector2i &size, bool copyDepth, int msaaPow, bool highPrecisionDepth=false) |
| void | MR::FramebufferData::bind (bool clear=true, float clearDepth=1.0f) |
| void | MR::FramebufferData::bindDefault () |
| void | MR::FramebufferData::bindTexture (bool color=true, bool depth=true) |
| | marks the texture to reading
|
| void | MR::FramebufferData::copyTextureBindDef () |
| void | MR::FramebufferData::del () |
| | removes this framebuffer
|
| unsigned | MR::FramebufferData::getColorTexture () const |
| | gets texture id for binding in other shaders
|
| unsigned | MR::FramebufferData::getDepthTexture () const |
| const Vector2i & | MR::FramebufferData::getSize () const |
| bool | MR::FramebufferData::isBound () const |
| | return true if texture is bound
|
| void | MR::FramebufferData::draw (QuadTextureVertexObject &quadObject, const DrawParams ¶ms) const |
| | draws this framebuffer using quadObject
|
| void | MR::bindDepthPeelingTextures (GLuint shaderId, const TransparencyMode &tMode, GLenum startGLTextureIndex) |
| | helper function to bind depth and color buffers to given shader program
|
| void | MR::objectPreRenderSetup (const TransparencyMode &tMode, RenderModelPassMask desiredPass, bool deptTesting) |
| void | MR::objectPostRenderSetup (const TransparencyMode &tMode, RenderModelPassMask desiredPass, bool deptTesting) |
| Vector2i | MR::calcTextureRes (int bufferSize, int maxTextWidth) |
| | calc texture resolution, to fit MAX_TEXTURE_SIZE, and have minimal empty pixels
|
| | MR::RenderBufferRef< T >::RenderBufferRef ()=default |
| | MR::RenderBufferRef< T >::RenderBufferRef (T *data, std::size_t glSize, bool dirty) |
| T & | MR::RenderBufferRef< T >::operator[] (std::size_t i) const noexcept |
| | returns reference to i-th element
|
| T * | MR::RenderBufferRef< T >::data () const noexcept |
| | returns pointer to buffer data
|
| std::size_t | MR::RenderBufferRef< T >::size () const noexcept |
| | returns actual buffer size
|
| std::size_t | MR::RenderBufferRef< T >::glSize () const noexcept |
| | returns number of elements that are about to be loaded or already loaded to GL memory
|
| bool | MR::RenderBufferRef< T >::dirty () const noexcept |
| | returns true if associated data were updated
|
| template<typename T> |
| RenderBufferRef< T > | MR::RenderObjectBuffer::prepareBuffer (std::size_t glSize, bool dirty=true) |
| size_t | MR::RenderObjectBuffer::heapBytes () const |
| void | MR::renderImGui (const Vector2i &resolution, const std::function< void()> &configureFunc, const std::function< void()> &drawFunc) |
| | MR::RenderImGuiLabelObject::RenderImGuiLabelObject (const VisualObject &object) |
| void | MR::RenderImGuiLabelObject::renderUi (const UiRenderParams ¶ms) override |
| | MR::RenderLabelObject::RenderLabelObject (const VisualObject &visObj) |
| | MR::RenderLabelObject::~RenderLabelObject () |
| virtual bool | MR::RenderLabelObject::render (const ModelRenderParams ¶ms) override |
| | Returns true if something was rendered, or false if nothing to render.
|
| virtual void | MR::RenderLabelObject::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId) override |
| virtual size_t | MR::RenderLabelObject::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::RenderLabelObject::glBytes () const override |
| | returns the amount of memory this object allocated in OpenGL
|
| virtual void | MR::RenderLabelObject::forceBindAll () override |
| | binds all data for this render object, not to bind ever again (until object becomes dirty)
|
| | MR::RenderLinesObject::RenderLinesObject (const VisualObject &visObj) |
| | MR::RenderLinesObject::~RenderLinesObject () |
| virtual bool | MR::RenderLinesObject::render (const ModelRenderParams ¶ms) override |
| | Returns true if something was rendered, or false if nothing to render.
|
| virtual void | MR::RenderLinesObject::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId) override |
| virtual size_t | MR::RenderLinesObject::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::RenderLinesObject::glBytes () const override |
| | returns the amount of memory this object allocated in OpenGL
|
| virtual void | MR::RenderLinesObject::forceBindAll () override |
| | binds all data for this render object, not to bind ever again (until object becomes dirty)
|
| const Vector2f & | MR::GetAvailableLineWidthRange () |
| | Returns the range of line widths that are allowed by current renderer.
|
| | MR::RenderPointObject::RenderPointObject (const VisualObject &object) |
| void | MR::RenderPointObject::renderUi (const UiRenderParams ¶ms) override |
| | MR::RenderDistanceObject::RenderDistanceObject (const VisualObject &object) |
| void | MR::RenderDistanceObject::renderUi (const UiRenderParams ¶ms) override |
| | MR::RenderRadiusObject::RenderRadiusObject (const VisualObject &object) |
| void | MR::RenderRadiusObject::renderUi (const UiRenderParams ¶ms) override |
| | MR::RenderAngleObject::RenderAngleObject (const VisualObject &object) |
| void | MR::RenderAngleObject::renderUi (const UiRenderParams ¶ms) override |
| | MR::RenderMeshObject::RenderMeshObject (const VisualObject &visObj) |
| virtual | MR::RenderMeshObject::~RenderMeshObject () |
| virtual bool | MR::RenderMeshObject::render (const ModelRenderParams ¶ms) override |
| | Returns true if something was rendered, or false if nothing to render.
|
| virtual void | MR::RenderMeshObject::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId) override |
| virtual size_t | MR::RenderMeshObject::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::RenderMeshObject::glBytes () const override |
| | returns the amount of memory this object allocated in OpenGL
|
| virtual void | MR::RenderMeshObject::forceBindAll () override |
| | binds all data for this render object, not to bind ever again (until object becomes dirty)
|
| RenderBufferRef< Vector3f > | MR::RenderMeshObject::loadVertPosBuffer_ () |
| RenderBufferRef< Vector3f > | MR::RenderMeshObject::loadVertNormalsBuffer_ () |
| RenderBufferRef< Color > | MR::RenderMeshObject::loadVertColorsBuffer_ () |
| RenderBufferRef< UVCoord > | MR::RenderMeshObject::loadVertUVBuffer_ () |
| RenderBufferRef< Vector3i > | MR::RenderMeshObject::loadFaceIndicesBuffer_ () |
| RenderBufferRef< unsigned > | MR::RenderMeshObject::loadFaceSelectionTextureBuffer_ () |
| RenderBufferRef< Vector4f > | MR::RenderMeshObject::loadFaceNormalsTextureBuffer_ () |
| RenderBufferRef< uint8_t > | MR::RenderMeshObject::loadTexturePerFaceTextureBuffer_ () |
| RenderBufferRef< VertId > | MR::RenderMeshObject::loadPointValidIndicesBuffer_ () |
| virtual void | MR::RenderMeshObject::renderEdges_ (const ModelRenderParams ¶meters, RenderModelPassMask desiredPass, GLuint vao, const Color &color, uint32_t dirtyFlag) |
| virtual void | MR::RenderMeshObject::renderMeshEdges_ (const ModelRenderParams ¶meters, RenderModelPassMask desiredPass) |
| virtual void | MR::RenderMeshObject::renderMeshVerts_ (const ModelRenderParams ¶meters, RenderModelPassMask desiredPass) |
| virtual void | MR::RenderMeshObject::bindMesh_ (GLStaticHolder::ShaderType shaderType) |
| virtual void | MR::RenderMeshObject::bindMeshPicker_ () |
| virtual void | MR::RenderMeshObject::bindEdges_ () |
| virtual void | MR::RenderMeshObject::bindBorders_ () |
| virtual void | MR::RenderMeshObject::bindSelectedEdges_ () |
| virtual void | MR::RenderMeshObject::bindEmptyTextures_ (GLuint shaderId) |
| virtual void | MR::RenderMeshObject::bindPoints_ (GLStaticHolder::ShaderType shaderType) |
| virtual void | MR::RenderMeshObject::drawMesh_ (bool solid, ViewportId viewportId, bool picker=false) const |
| virtual void | MR::RenderMeshObject::initBuffers_ () |
| | Create a new set of OpenGL buffer objects.
|
| virtual void | MR::RenderMeshObject::freeBuffers_ () |
| | Release the OpenGL buffer objects.
|
| virtual void | MR::RenderMeshObject::update_ (ViewportMask mask) |
| void | MR::RenderNameObject::Task::renderPass () override |
| void | MR::RenderNameObject::Task::onClick () override |
| | MR::RenderNameObject::RenderNameObject (const VisualObject &object) |
| void | MR::RenderNameObject::renderUi (const UiRenderParams ¶ms) override |
| virtual ImGuiMeasurementIndicators::Text | MR::RenderNameObject::getObjectNameText (const VisualObject &object, ViewportId viewportId) const |
| | The text displayed as the clickable object name.
|
| virtual ImGuiMeasurementIndicators::Text | MR::RenderNameObject::getObjectNameExtraText (const VisualObject &object, ViewportId viewportId) const |
| | MR::RenderPointsObject::RenderPointsObject (const VisualObject &visObj) |
| | MR::RenderPointsObject::~RenderPointsObject () |
| virtual bool | MR::RenderPointsObject::render (const ModelRenderParams ¶ms) override |
| | Returns true if something was rendered, or false if nothing to render.
|
| virtual void | MR::RenderPointsObject::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId) override |
| virtual size_t | MR::RenderPointsObject::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::RenderPointsObject::glBytes () const override |
| | returns the amount of memory this object allocated in OpenGL
|
| virtual void | MR::RenderPointsObject::forceBindAll () override |
| | binds all data for this render object, not to bind ever again (until object becomes dirty)
|
| Image | MR::renderToImage (const Vector2i &resolution, const std::optional< Color > &backgroundColor, const std::function< void(FramebufferData *framebuffer)> &drawFunc) |
| | MR::RenderVolumeObject::RenderVolumeObject (const VisualObject &visObj) |
| | MR::RenderVolumeObject::~RenderVolumeObject () |
| virtual bool | MR::RenderVolumeObject::render (const ModelRenderParams ¶ms) override |
| | Returns true if something was rendered, or false if nothing to render.
|
| virtual void | MR::RenderVolumeObject::renderPicker (const ModelBaseRenderParams ¶ms, unsigned geomId) override |
| virtual size_t | MR::RenderVolumeObject::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| virtual size_t | MR::RenderVolumeObject::glBytes () const override |
| | returns the amount of memory this object allocated in OpenGL
|
| virtual void | MR::RenderVolumeObject::forceBindAll () override |
| | binds all data for this render object, not to bind ever again (until object becomes dirty)
|
| static void | MR::RibbonButtonDrawer::InitGradientTexture () |
| | Creates GL texture for gradient UI (called on theme apply)
|
| static std::unique_ptr< ImGuiImage > & | MR::RibbonButtonDrawer::GetTexture (TextureType type) |
| bool | MR::RibbonButtonDrawer::GradientCheckboxItem (const MenuItemInfo &item, bool *value) const |
| | draw gradient checkbox with icon (for menu item)
|
| static bool | MR::RibbonButtonDrawer::CustomCollapsingHeader (const char *label, ImGuiTreeNodeFlags flags=0, int issueCount=0) |
| ButtonItemWidth | MR::RibbonButtonDrawer::calcItemWidth (const MenuItemInfo &item, DrawButtonParams::SizeType sizeType) const |
| void | MR::RibbonButtonDrawer::drawButtonItem (const MenuItemInfo &item, const DrawButtonParams ¶ms) const |
| | draw item button
|
| void | MR::RibbonButtonDrawer::drawCustomButtonItem (const MenuItemInfo &item, const CustomButtonParameters &customParam, const DrawButtonParams ¶ms) const |
| | draw item button
|
| void | MR::RibbonButtonDrawer::drawButtonIcon (const MenuItemInfo &item, const DrawButtonParams ¶ms) const |
| | draw item button icon
|
| bool | MR::RibbonButtonDrawer::drawTabArrowButton (const char *icon, const ImVec2 &size, float iconSize) |
| | draw custom styled button
|
| void | MR::RibbonButtonDrawer::setMonochrome (const std::optional< Color > &color) |
| | if set color then instead of multicolored icons will be drawn with this color
|
| void | MR::RibbonButtonDrawer::setOnPressAction (std::function< void(std::shared_ptr< RibbonMenuItem >, const std::string &)> action) |
| | set reaction on press item button
|
| void | MR::RibbonButtonDrawer::setGetterRequirements (std::function< std::string(std::shared_ptr< RibbonMenuItem >)> getterRequirements) |
| | set function to get requirements for activate item
|
| void | MR::RibbonButtonDrawer::setMenu (RibbonMenu *menu) |
| void | MR::RibbonButtonDrawer::setShortcutManager (const ShortcutManager *shortcutManager) |
| int | MR::RibbonButtonDrawer::pushRibbonButtonColors (bool enabled, bool active, bool forceHovered, DrawButtonParams::RootType rootType) const |
| | MR::RibbonFontHolder::RibbonFontHolder (const RibbonFontManager::FontType &fontType) |
| | MR::RibbonFontHolder::RibbonFontHolder (const RibbonFontManager::FontType &fontType, float scale) |
| | MR::RibbonFontHolder::RibbonFontHolder (const RibbonFontManager::FontType &fontType, float scale, bool pushOnCreate) |
| | MR::RibbonFontHolder::~RibbonFontHolder () |
| void | MR::RibbonFontHolder::pushFont () |
| | check the font for existence and push it
|
| void | MR::RibbonFontHolder::popFont () |
| | check the font for existence and pop it
|
| bool | MR::RibbonFontHolder::isPushed () |
| | font is pushed
|
| | MR::RibbonFontManager::RibbonFontManager () |
| void | MR::RibbonFontManager::loadAllFonts (ImWchar *charRanges) |
| | load all fonts using in ribbon menu
|
| ImFont * | MR::RibbonFontManager::getFontByType (FontType type) const |
| | get font by font type
|
| static float | MR::RibbonFontManager::getFontSizeByType (FontType type) |
| | get font size by font type
|
| std::filesystem::path | MR::RibbonFontManager::getMenuFontPath () const |
| | get ribbon menu font path
|
| const FontFilePaths & | MR::RibbonFontManager::getAllFontPaths () const |
| | returns list of all font paths
|
| void | MR::RibbonFontManager::setNewFontPaths (const FontFilePaths &paths) |
| static ImFont * | MR::RibbonFontManager::getFontByTypeStatic (FontType type) |
| static FontAndSize | MR::RibbonFontManager::getFontAndSizeByTypeStatic (FontType type) |
| static void | MR::RibbonFontManager::initFontManagerInstance (RibbonFontManager *ribbonFontManager) |
| static void | MR::RibbonIcons::load () |
| | this should be called once on start of program (called in RibbonMenu::init)
|
| static void | MR::RibbonIcons::free () |
| | this should be called once before program stops (called in RibbonMenu::shutdown)
|
| static const ImGuiImage * | MR::RibbonIcons::findByName (const std::string &name, float width, ColorType colorType, IconType iconType) |
| | finds icon with best fitting size, if there is no returns nullptr
|
| RibbonConfig | MR::createRibbonConfigFromJson (const Json::Value &root) |
| | parse given json and setup RibbonConfig from it
|
| void | MR::applyRibbonConfig (const RibbonConfig &config) |
| | apply given config to the application
|
| | MR::RibbonMenu::RibbonMenu () |
| | MR::RibbonMenu::~RibbonMenu () |
| static std::shared_ptr< RibbonMenu > | MR::RibbonMenu::instance () |
| | returns RibonMenu from ViewerInstance()
|
| void | MR::RibbonMenu::setCustomContextCheckbox (const std::string &name, CustomContextMenuCheckbox customContextMenuCheckbox) |
| virtual void | MR::RibbonMenu::init (MR::Viewer *_viewer) override |
| | This function is called when the viewer is initialized (no mesh will be loaded at this stage)
|
| virtual void | MR::RibbonMenu::shutdown () override |
| | This function is called before shutdown.
|
| virtual void | MR::RibbonMenu::drawViewerWindow () override |
| | override this instead using callback_draw_viewer_window
|
| virtual void | MR::RibbonMenu::drawAdditionalWindows () override |
| | override this instead using callback_draw_custom_window
|
| void | MR::RibbonMenu::openToolbarCustomize () |
| | open Toolbar Customize modal popup
|
| virtual void | MR::RibbonMenu::loadFonts (int font_size=13) override |
| virtual std::filesystem::path | MR::RibbonMenu::getMenuFontPath () const override |
| virtual void | MR::RibbonMenu::pinTopPanel (bool on) |
| | set top panel pinned and unpinned
|
| bool | MR::RibbonMenu::isTopPannelPinned () const |
| int | MR::RibbonMenu::getTopPanelOpenedHeight () const |
| | this functions allow you to get top panel height (before scaling)
|
| int | MR::RibbonMenu::getTopPanelHiddenHeight () const |
| int | MR::RibbonMenu::getTopPanelCurrentHeight () const |
| void | MR::RibbonMenu::setTopPanelMaxOpenedTimer (float sec) |
| virtual void | MR::RibbonMenu::setQuickAccessListVersion (int version) |
| | set quick access menu item list version
|
| virtual void | MR::RibbonMenu::readQuickAccessList (const Json::Value &root) |
| | read quick access menu items list from json
|
| void | MR::RibbonMenu::resetQuickAccessList () |
| | reset quick access menu items list to default
|
| Vector2i | MR::RibbonMenu::getSceneSize () |
| | get Scene List window size
|
| void | MR::RibbonMenu::setSceneSize (const Vector2i &size) |
| | set Scene List window size
|
| bool | MR::RibbonMenu::hasActiveBlockingItem () const |
| | returns true if any blocking plugin is now active
|
| bool | MR::RibbonMenu::hasAnyActiveItem () const |
| | returns true if any plugin is now active
|
| void | MR::RibbonMenu::updateItemStatus (const std::string &itemName) |
| | updates status of item if it was changed outside of menu
|
| int | MR::RibbonMenu::getActiveTabIndex () const |
| | returns index of active tab in RibbonSchemaHolder::schema().tabsOrder
|
| RibbonFontManager & | MR::RibbonMenu::getFontManager () |
| | get access to Ribbon font manager
|
| RibbonButtonDrawer & | MR::RibbonMenu::getRibbonButtonDrawer () |
| | get access to Ribbon button drawer
|
| Toolbar & | MR::RibbonMenu::getToolbar () |
| | get access to Ribbon Toolbar
|
| RibbonNotifier & | MR::RibbonMenu::getRibbonNotifier () |
| | get access to Ribbon notifier
|
| void | MR::RibbonMenu::setActiveListPos (const ImVec2 &pos) |
| void | MR::RibbonMenu::showActiveList () |
| | set active plugins list showed
|
| virtual void | MR::RibbonMenu::pushNotification (const RibbonNotification ¬ification) |
| static void | MR::RibbonMenu::cloneTree (const std::vector< std::shared_ptr< Object > > &selectedObjects) |
| | clones given objects with sub-objects (except for ancillary and unrecognized children) and undo
|
| static void | MR::RibbonMenu::cloneSelectedPart (const std::shared_ptr< Object > &object) |
| | clones selected part of given object as separate object (faces, points)
|
| bool | MR::RibbonMenu::getAutoCloseBlockingPlugins () const |
| | returns flag defining if closing plugin on opening another one is enabled
|
| void | MR::RibbonMenu::setAutoCloseBlockingPlugins (bool value) |
| | sets flag defining if closing plugin on opening another one is enabled or not
|
| const RibbonMenuUIConfig & | MR::RibbonMenu::getMenuUIConfig () const |
| | returns current menu ui configuration (find more in RibbonMenuUIConfig comments)
|
| virtual void | MR::RibbonMenu::setMenuUIConfig (const RibbonMenuUIConfig &newConfig) |
| bool | MR::RibbonMenu::drawGroupUngroupButton (const std::vector< std::shared_ptr< Object > > &selected) |
| | ======== selected objects options drawing
|
| bool | MR::RibbonMenu::drawSelectSubtreeButton (const std::vector< std::shared_ptr< Object > > &selected) |
| bool | MR::RibbonMenu::drawCloneButton (const std::vector< std::shared_ptr< Object > > &selected) |
| bool | MR::RibbonMenu::drawCustomCheckBox (const std::vector< std::shared_ptr< Object > > &selected, SelectedTypesMask selectedMask) |
| bool | MR::RibbonMenu::drawCloneSelectionButton (const std::vector< std::shared_ptr< Object > > &selected) |
| bool | MR::RibbonMenu::drawMergeSubtreeButton (const std::vector< std::shared_ptr< Object > > &selected) |
| virtual void | MR::RibbonMenu::drawBigButtonItem_ (const MenuItemInfo &item) |
| | draw single item
|
| virtual void | MR::RibbonMenu::drawSmallButtonsSet_ (const std::vector< std::string > &group, int setFrontIndex, int setLength, bool withText) |
| | draw set of small text buttons
|
| virtual DrawTabConfig | MR::RibbonMenu::setupItemsGroupConfig_ (const std::vector< std::string > &groupsInTab, const std::string &tabName, bool centerItems) |
| | draw group of items
|
| virtual void | MR::RibbonMenu::setupItemsGroup_ (const std::vector< std::string > &groupsInTab, const std::string &tabName, bool centerItems) |
| virtual void | MR::RibbonMenu::drawItemsGroup_ (const std::string &tabName, const std::string &groupName, DrawGroupConfig config) |
| virtual bool | MR::RibbonMenu::itemPressed_ (const std::shared_ptr< RibbonMenuItem > &item, const std::string &requiremetnsHint={}) |
| virtual std::string | MR::RibbonMenu::getRequirements_ (const std::shared_ptr< RibbonMenuItem > &item) const |
| | returns requirements line for given tool, empty line means that tool is available
|
| virtual void | MR::RibbonMenu::drawActiveBlockingDialog_ () |
| virtual void | MR::RibbonMenu::drawActiveNonBlockingDialogs_ () |
| virtual void | MR::RibbonMenu::postResize_ (int width, int height) override |
| | Scene events.
|
| virtual void | MR::RibbonMenu::postRescale_ (float x, float y) override |
| virtual void | MR::RibbonMenu::drawItemDialog_ (DialogItemPtr &itemPtr) |
| virtual void | MR::RibbonMenu::drawTopPanel_ (bool drawTabs=true, bool centerItems=false) |
| | Draw ribbon top panel.
|
| virtual void | MR::RibbonMenu::drawRibbonSceneList_ () |
| | Draw scene list window with content.
|
| virtual Vector2f | MR::RibbonMenu::drawRibbonSceneResizeLine_ () |
| virtual void | MR::RibbonMenu::drawRibbonViewportsLabels_ () |
| | Draw viewport id and projection type for all viewporrts.
|
| virtual void | MR::RibbonMenu::drawRibbonSceneInformation_ (const std::vector< std::shared_ptr< Object > > &selected) |
| virtual bool | MR::RibbonMenu::drawCollapsingHeaderTransform_ () override |
| | override this to customize appearance of collapsing headers for transform block
|
| virtual bool | MR::RibbonMenu::drawTransformContextMenu_ (const std::shared_ptr< Object > &selected) override |
| virtual void | MR::RibbonMenu::addRibbonItemShortcut_ (const std::string &itemName, const ShortcutKey &key, ShortcutCategory category) |
| virtual void | MR::RibbonMenu::setupShortcuts_ () override |
| virtual void | MR::RibbonMenu::drawShortcutsWindow_ () override |
| | A virtual function for drawing of the dialog with shortcuts. It can be overriden in the inherited classes.
|
| virtual void | MR::RibbonMenu::readMenuItemsStructure_ () |
| | reads files with panel description
|
| virtual bool | MR::RibbonMenu::drawCollapsingHeader_ (const char *label, ImGuiTreeNodeFlags flags=0) override |
| | override this to have custom UI in "Selection Properties" window (under "Draw Options")
|
| virtual void | MR::RibbonMenu::highlightBlocking_ () |
| virtual void | MR::RibbonMenu::drawSceneListButtons_ () |
| | draw scene list buttons
|
| virtual void | MR::RibbonMenu::fixViewportsSize_ (int w, int h) |
| | updates viewport sizes with respect to ribbon top and left panels
|
| void | MR::RibbonMenu::drawActiveList_ () |
| | need to be called if you override windows pipeline and use ActiveListPlugin
|
| virtual void | MR::RibbonMenu::drawNotifications_ () |
| | call this to draw RibbonNotifier with respect of scene size and ribbon top panel
|
| virtual void | MR::RibbonMenu::updateTopPanelSize_ (bool drawTabs) |
| | this function changes internal sizes of topPanel when it is enabled or disabled
|
| virtual void | MR::RibbonMenu::drawHeaderQuickAccess_ () |
| | draw quick access bar at header level
|
| virtual float | MR::RibbonMenu::drawHeaderHelpers_ (float requiredTabSize) |
| virtual void | MR::RibbonMenu::drawActiveListButton_ (float btnSize) |
| | helper list of active tools
|
| virtual void | MR::RibbonMenu::drawSearchButton_ () |
| | header helper search bar at panel
|
| virtual void | MR::RibbonMenu::drawCollapseButton_ () |
| | header helper button to pin/unpin ribbon
|
| virtual void | MR::RibbonMenu::drawHelpButton_ (const std::string &url) |
| | header helper button link to help page
|
| void | MR::pushNotification (const RibbonNotification ¬ification) |
| | Checks if RibbonMenu is available, if it is - forwards notification to RibbonNotifier. Otherwise - calls showModal() function.
|
| | MR::RibbonMenuItem::MR_DELETE_MOVE (RibbonMenuItem) |
| | MR::RibbonMenuItem::RibbonMenuItem (std::string name) |
| virtual | MR::RibbonMenuItem::~RibbonMenuItem ()=default |
| virtual bool | MR::RibbonMenuItem::action ()=0 |
| | returns true if state of item changed
|
| virtual bool | MR::RibbonMenuItem::isActive () const |
| | for state items returns true if activated
|
| virtual bool | MR::RibbonMenuItem::blocking () const |
| | true if this item is blocking (only one blocking item can be active at once)
|
| const std::string & | MR::RibbonMenuItem::name () const |
| virtual const std::string & | MR::RibbonMenuItem::uiName () const |
| void | MR::RibbonMenuItem::setRibbonItemType (RibbonItemType type) |
| virtual RibbonItemType | MR::RibbonMenuItem::type () const |
| | type of this item, base RibbonMenuItem can be only button
|
| void | MR::RibbonMenuItem::setDropItemsFromItemList (const MenuItemsList &itemsList) |
| virtual const DropItemsList & | MR::RibbonMenuItem::dropItems () const |
| virtual std::string | MR::RibbonMenuItem::getDynamicTooltip () const |
| | return not-empty string with tooltip that shall replace the static tooltip from json
|
| const char * | MR::RibbonMenuSearch::windowName () const |
| | returns search imgui popup window name
|
| void | MR::RibbonMenuSearch::pushRecentItem (const std::shared_ptr< RibbonMenuItem > &item) |
| | add item to recent items list
|
| void | MR::RibbonMenuSearch::drawMenuUI (const Parameters ¶ms) |
| | draws search elements and window with its logic
|
| void | MR::RibbonMenuSearch::setSmallUI (bool on) |
| | set draw mode (true - small button, false - input string )
|
| float | MR::RibbonMenuSearch::getWidthMenuUI () const |
| float | MR::RibbonMenuSearch::getSearchStringWidth () const |
| | get search string width (+ item spacing)
|
| void | MR::RibbonMenuSearch::activate () |
| | activate search from outside (i.e. shortcut)
|
| void | MR::RibbonMenuSearch::setRequirementsFunc (const RequirementsFunction &requirementsFunc) |
| | set function to get a requirements line for some tool
|
| bool | MR::RibbonMenuUIConfig::operator== (const RibbonMenuUIConfig &) const =default |
| bool | MR::RibbonNotification::operator== (const RibbonNotification &other) const |
| void | MR::RibbonNotifier::pushNotification (const RibbonNotification ¬ification) |
| | adds new notification for drawing
|
| void | MR::RibbonNotifier::draw (const Box2i &limitFramebuffer) |
| void | MR::RibbonNotifier::setHitoryButtonMaxLifeTime (float histBtnMaxLifeTime) |
| | MR::RibbonMenuItemAdder::RibbonMenuItemAdder (std::shared_ptr< RibbonMenuItem > item) |
| | calls RibbonSchemaHolder::addItem( item_ = item );
|
| | MR::RibbonMenuItemAdder::~RibbonMenuItemAdder () |
| | calls RibbonSchemaHolder::delItem( item_ );
|
| template<typename... Args> |
| | MR::RibbonMenuItemAdderT< T >::RibbonMenuItemAdderT (Args &&... args) |
| virtual void | MR::RibbonSceneObjectsListDrawer::draw (float height) override |
| void | MR::RibbonSceneObjectsListDrawer::initRibbonMenu (RibbonMenu *ribbonMenu) |
| void | MR::RibbonSceneObjectsListDrawer::setCloseContextOnChange (bool deselect) |
| | set closing scene context menu on any change
|
| bool | MR::RibbonSceneObjectsListDrawer::getCloseContextOnChange () |
| | get flag closing scene context menu on any change
|
| virtual void | MR::RibbonSceneObjectsListDrawer::drawCustomObjectPrefixInScene_ (const Object &obj, bool opened) override |
| virtual void | MR::RibbonSceneObjectsListDrawer::drawSceneContextMenu_ (const std::vector< std::shared_ptr< Object > > &selected, const std::string &uniqueStr) override |
| virtual bool | MR::RibbonSceneObjectsListDrawer::collapsingHeader_ (const std::string &uniqueName, ImGuiTreeNodeFlags flags) override |
| | override this to customize CollapsingHeader draw
|
| virtual std::string | MR::RibbonSceneObjectsListDrawer::objectLineStrId_ (const Object &object, const std::string &uniqueStr) override |
| virtual bool | MR::RibbonSceneObjectsListDrawer::drawObject_ (Object &object, const std::string &uniqueStr, int depth) override |
| | override this to customize whole object line
|
| virtual bool | MR::RibbonSceneObjectsListDrawer::drawSkippedObject_ (Object &object, const std::string &uniqueStr, int depth) override |
| | draw dummy container for skipped object
|
| const std::string & | MR::MenuItemInfo::getCaption () const |
| | needed for translation
|
| virtual | MR::RibbonSchemaLoadListener::~RibbonSchemaLoadListener ()=default |
| virtual void | MR::RibbonSchemaLoadListener::onRibbonSchemaLoad_ ()=0 |
| void | MR::RibbonSchema::eliminateEmptyGroups () |
| | deletes empty groups (and references on them from tabs)
|
| void | MR::RibbonSchema::sortTabsByPriority () |
| | re-order items in tabsOrder according to their priority, the order of items having same priority is preserved
|
| void | MR::RibbonSchema::updateCaptions () |
| | updates inner caption for all StateBasePlugins in schema
|
| static RibbonSchema & | MR::RibbonSchemaHolder::schema () |
| static bool | MR::RibbonSchemaHolder::addItem (const std::shared_ptr< RibbonMenuItem > &item) |
| static bool | MR::RibbonSchemaHolder::delItem (const std::shared_ptr< RibbonMenuItem > &item) |
| static std::vector< SearchResult > | MR::RibbonSchemaHolder::search (const std::string &searchStr, const SearchParams ¶ms) |
| | searches for tools with the most appropriate names (captions) or tooltips
|
| static int | MR::RibbonSchemaHolder::findItemTab (const std::shared_ptr< RibbonMenuItem > &item) |
| | returns item tab index in schema.tabsOrder or -1 if no tab found (e.g. scene fast access panel or header access panel)
|
| | MR::RibbonSchemaLoader::RibbonSchemaLoader ()=default |
| virtual | MR::RibbonSchemaLoader::~RibbonSchemaLoader ()=default |
| virtual void | MR::RibbonSchemaLoader::loadSchema () const |
| | Loads schema from files.
|
| static void | MR::RibbonSchemaLoader::readMenuItemsList (const Json::Value &root, MenuItemsList &list) |
| | Reads schema items list from root to list
|
| static void | MR::RibbonSchemaLoader::recalcItemSizes () |
| | Recalc items sizes.
|
| virtual std::vector< std::filesystem::path > | MR::RibbonSchemaLoader::getStructureFiles_ (const std::string &fileExtension) const |
| | finds structure json files in exe directory
|
| void | MR::RibbonSchemaLoader::sortFilesByOrder_ (std::vector< std::filesystem::path > &files) const |
| | sort structure json files by order
|
| void | MR::RibbonSchemaLoader::readItemsJson_ (const std::filesystem::path &path) const |
| | appends one menu items json info
|
| void | MR::RibbonSchemaLoader::readItemsJson_ (const Json::Value &root, const std::string &schemaName={}) const |
| void | MR::RibbonSchemaLoader::readUIJson_ (const std::filesystem::path &path) const |
| | appends one ui json info
|
| void | MR::RibbonSchemaLoader::readUIJson_ (const Json::Value &root) const |
| template<typename F> |
| | MR::RibbonMenuItemCall< T >::RibbonMenuItemCall (F f, std::function< void(std::shared_ptr< T >)> g) |
| | MR::RibbonMenuItemCall< T >::~RibbonMenuItemCall () |
| Expected< void > | MR::saveObjectToFile (const Object &obj, const std::filesystem::path &filename, const SaveObjectSettings &settings={}) |
| | save visual object (mesh, lines, points or voxels) to file
|
| virtual void | MR::SaveOnClosePlugin::init (Viewer *_viewer) override |
| | This function is called when the viewer is initialized (no mesh will be loaded at this stage)
|
| virtual void | MR::SaveOnClosePlugin::shutdown () override |
| | This function is called before shutdown.
|
| static void | MR::SceneCache::invalidateAll () |
| template<typename ObjectType, ObjectSelectivityType SelectivityType> |
| static const ObjectList< ObjectType > & | MR::SceneCache::getAllObjects () |
| | MR::SceneCache::BasicVectorHolder::BasicVectorHolder ()=default |
| | MR::SceneCache::BasicVectorHolder::BasicVectorHolder (const BasicVectorHolder &)=default |
| | MR::SceneCache::BasicVectorHolder::BasicVectorHolder (BasicVectorHolder &&)=default |
| virtual | MR::SceneCache::BasicVectorHolder::~BasicVectorHolder ()=default |
| | MR::UndoMenuItem::UndoMenuItem () |
| virtual bool | MR::UndoMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::UndoMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual std::string | MR::UndoMenuItem::getDynamicTooltip () const override |
| | return not-empty string with tooltip that shall replace the static tooltip from json
|
| | MR::RedoMenuItem::RedoMenuItem () |
| virtual bool | MR::RedoMenuItem::action () override |
| | returns true if state of item changed
|
| virtual std::string | MR::RedoMenuItem::isAvailable (const std::vector< std::shared_ptr< const Object > > &) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual std::string | MR::RedoMenuItem::getDynamicTooltip () const override |
| | return not-empty string with tooltip that shall replace the static tooltip from json
|
| virtual | MR::SceneObjectsListDrawer::~SceneObjectsListDrawer ()=default |
| virtual void | MR::SceneObjectsListDrawer::draw (float height) |
| void | MR::SceneObjectsListDrawer::setShowNewSelectedObjects (bool show) |
| | set flag of the object visibility activation after selection
|
| bool | MR::SceneObjectsListDrawer::getShowNewSelectedObjects () |
| | get flag of the object visibility activation after selection
|
| void | MR::SceneObjectsListDrawer::setDeselectNewHiddenObjects (bool deselect) |
| | set flag of deselect object after hidden
|
| bool | MR::SceneObjectsListDrawer::getDeselectNewHiddenObjects () |
| | get flag of deselect object after hidden
|
| void | MR::SceneObjectsListDrawer::changeSelection (bool isDown, bool isShift) |
| void | MR::SceneObjectsListDrawer::changeVisible (bool isDown) |
| void | MR::SceneObjectsListDrawer::selectAllObjects () |
| | select all selectable objects
|
| void | MR::SceneObjectsListDrawer::setLeavesVisibility (bool visible) |
| | set visible flag all selectable objects
|
| void | MR::SceneObjectsListDrawer::setObjectTreeState (const Object *obj, bool open) |
| | set object collapse state (hiding children)
|
| void | MR::SceneObjectsListDrawer::expandObjectTreeAndScroll (const Object *obj) |
| | expands all objs parents in tree and scroll scene tree window so selection becomes visible
|
| void | MR::SceneObjectsListDrawer::allowSceneReorder (bool allow) |
| | set possibility change object order
|
| void | MR::SceneObjectsListDrawer::setNextFrameFixScroll (int skipFrames=1) |
| | helper method for fix scroll position after change available height
|
| virtual void | MR::SceneObjectsListDrawer::drawCustomObjectPrefixInScene_ (const Object &, bool) |
| virtual void | MR::SceneObjectsListDrawer::drawSceneContextMenu_ (const std::vector< std::shared_ptr< Object > > &, const std::string &) |
| virtual float | MR::SceneObjectsListDrawer::drawCustomTreeObjectProperties_ (Object &obj, bool onlyCalcHeight) |
| virtual bool | MR::SceneObjectsListDrawer::collapsingHeader_ (const std::string &uniqueName, ImGuiTreeNodeFlags flags) |
| | override this to customize CollapsingHeader draw
|
| virtual std::string | MR::SceneObjectsListDrawer::objectLineStrId_ (const Object &object, const std::string &uniqueStr) |
| virtual bool | MR::SceneObjectsListDrawer::drawObject_ (Object &object, const std::string &uniqueStr, int depth) |
| | override this to customize whole object line
|
| virtual bool | MR::SceneObjectsListDrawer::drawSkippedObject_ (Object &object, const std::string &uniqueStr, int depth) |
| | draw dummy container for skipped object
|
| bool | MR::SceneObjectsListDrawer::drawObjectCollapsingHeader_ (Object &object, const std::string &uniqueStr, bool hasRealChildren) |
| | function that draws collapsing header and process click on it
|
| void | MR::SceneObjectsListDrawer::processItemClick_ (Object &object, const std::vector< std::shared_ptr< Object > > &selected) |
| | function that do click logic on object line (select/deselect/rename/open context)
|
| void | MR::SceneObjectsListDrawer::makeDragDropSource_ (const std::vector< std::shared_ptr< Object > > &payload) |
| | payload object will be moved
|
| bool | MR::SceneObjectsListDrawer::needDragDropTarget_ () |
| | checking the need to draw a target
|
| void | MR::SceneObjectsListDrawer::makeDragDropTarget_ (Object &target, bool before, bool betweenLine, const std::string &uniqueStr) |
| void | MR::SceneObjectsListDrawer::drawObjectVisibilityCheckbox_ (Object &object, const std::string &uniqueStr) |
| | draw visibility checkbox and call ImGui::SameLine at the end
|
| static TypedFlatTree | MR::TypedFlatTree::fromFlatTree (const FlatTree &tree) |
| std::vector< FlatTree > | MR::getFlatSubtrees (const std::vector< std::shared_ptr< Object > > &objs) |
| void | MR::mergeSubtree (TypedFlatTree subtree) |
| | merge objects of same type in the object tree
|
| void | MR::mergeSubtree (std::shared_ptr< Object > rootObj) |
| bool | MR::sceneReorderWithUndo (const SceneReorder &task) |
| bool | MR::moveAllChildrenWithUndo (Object &oldParent, Object &newParent, const std::string &historyName="Move Children") |
| virtual | MR::ISceneSelectionChange::~ISceneSelectionChange ()=default |
| virtual void | MR::ISceneSelectionChange::updateSelection (const std::vector< std::shared_ptr< const Object > > &) |
| virtual void | MR::SceneSelectionChangeClose::updateSelection (const std::vector< std::shared_ptr< const Object > > &) override |
| virtual void | MR::SceneSelectionChangeRestart::updateSelection (const std::vector< std::shared_ptr< const Object > > &) override |
| template<typename ObjectT> |
| std::string | MR::getNObjectsLine (unsigned n) |
| template<typename ObjectT, bool visualRepresentationCheck, bool modelCheck> |
| std::string | MR::sceneSelectedExactly (const std::vector< std::shared_ptr< const Object > > &objs, unsigned n) |
| template<typename ObjectT, bool visualRepresentationCheck, bool modelCheck> |
| std::string | MR::sceneSelectedAtLeast (const std::vector< std::shared_ptr< const Object > > &objs, unsigned n) |
| virtual | MR::SceneStateExactCheck< N, ObjectT, typename >::~SceneStateExactCheck ()=default |
| virtual std::string | MR::SceneStateExactCheck< N, ObjectT, typename >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual | MR::SceneStateExactCheck< N, ObjectT, NoVisualRepresentationCheck >::~SceneStateExactCheck ()=default |
| virtual std::string | MR::SceneStateExactCheck< N, ObjectT, NoVisualRepresentationCheck >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual | MR::SceneStateExactCheck< N, ObjectT, NoModelCheck >::~SceneStateExactCheck ()=default |
| virtual std::string | MR::SceneStateExactCheck< N, ObjectT, NoModelCheck >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual | MR::SceneStateAtLeastCheck< N, ObjectT, typename >::~SceneStateAtLeastCheck ()=default |
| virtual std::string | MR::SceneStateAtLeastCheck< N, ObjectT, typename >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual | MR::SceneStateAtLeastCheck< N, ObjectT, NoVisualRepresentationCheck >::~SceneStateAtLeastCheck ()=default |
| virtual std::string | MR::SceneStateAtLeastCheck< N, ObjectT, NoVisualRepresentationCheck >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual | MR::SceneStateAtLeastCheck< N, ObjectT, NoModelCheck >::~SceneStateAtLeastCheck ()=default |
| virtual std::string | MR::SceneStateAtLeastCheck< N, ObjectT, NoModelCheck >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| | return empty string if all requirements are satisfied, otherwise return first unsatisfied requirement
|
| virtual | MR::SceneStateOrCheck< Checks >::~SceneStateOrCheck ()=default |
| virtual std::string | MR::SceneStateOrCheck< Checks >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| virtual | MR::SceneStateAndCheck< Checks >::~SceneStateAndCheck ()=default |
| virtual std::string | MR::SceneStateAndCheck< Checks >::isAvailable (const std::vector< std::shared_ptr< const Object > > &objs) const override |
| void | MR::SceneTextureGL::bind (bool clear) |
| void | MR::SceneTextureGL::unbind () |
| | binds default framebuffer (and read/draw framebuffers)
|
| void | MR::SceneTextureGL::reset (const Vector2i &size, int msaaPow, bool depthTexture) |
| void | MR::SceneTextureGL::copyTexture () |
| | copy texture so draw() can render it
|
| void | MR::SceneTextureGL::draw () |
| | renders texture
|
| bool | MR::SceneTextureGL::isBound () const |
| | return true if texture is bound
|
| FramebufferData & | MR::SceneTextureGL::getFramebuffer () |
| float | MR::SelectCurvaturePreference (PathPreference *pp) |
| BitSet | MR::calculateSelectedPixelsInsidePolygon (const Contour2f &screenPoints) |
| BitSet | MR::calculateSelectedPixelsNearPolygon (const Contour2f &screenPoints, float radiusPix) |
| FaceBitSet | MR::findIncidentFaces (const Viewport &viewport, const BitSet &pixBs, const ObjectMesh &obj, bool onlyVisible=false, bool includeBackfaces=true, const std::vector< ObjectMesh * > *occludingMeshes=nullptr) |
| void | MR::appendGPUVisibleFaces (const Viewport &viewport, const BitSet &pixBs, const std::vector< std::shared_ptr< ObjectMesh > > &objects, std::vector< FaceBitSet > &visibleFaces, bool includeBackfaces=true) |
| | these meshes can influence face visibility in onlyVisible=true mode
|
| VertBitSet | MR::findVertsInViewportArea (const Viewport &viewport, const BitSet &bsVec, const ObjectPoints &obj, bool includeBackfaces=true, bool onlyVisible=false) |
| | MR::ViewerSetup::ViewerSetup ()=default |
| | explicitly define ctors to avoid warning C5267: definition of implicit copy constructor is deprecated because it has a user-provided destructor
|
| | MR::ViewerSetup::ViewerSetup (const ViewerSetup &)=default |
| | MR::ViewerSetup::ViewerSetup (ViewerSetup &&)=default |
| virtual | MR::ViewerSetup::~ViewerSetup ()=default |
| virtual void | MR::ViewerSetup::setupBasePlugins (Viewer *) const |
| | Setups Menu Save and Open plugins.
|
| virtual void | MR::ViewerSetup::setupCommonModifiers (Viewer *) const |
| | Setups modifiers to Menu plugin if it is present in viewer.
|
| virtual void | MR::ViewerSetup::setupCommonPlugins (Viewer *) const |
| | Setups custom plugins to viewer.
|
| virtual void | MR::ViewerSetup::setupSettingsManager (Viewer *viewer, const std::string &appName, bool reset=false) const |
| virtual void | MR::ViewerSetup::setupConfiguration (Viewer *viewer) const |
| virtual void | MR::ViewerSetup::setupExtendedLibraries () const |
| virtual void | MR::ViewerSetup::unloadExtendedLibraries () const |
| | free all libraries loaded in setupExtendedLibraries()
|
| std::string | MR::getPickerFragmentShader (bool points, bool cornerMode=true) |
| std::string | MR::getFragmentShaderClippingBlock () |
| std::string | MR::getFragmentShaderPointSizeBlock () |
| std::string | MR::getFragmentShaderOnlyOddBlock (bool sampleMask) |
| std::string | MR::getFragmentShaderHeaderBlock (bool gl4, bool alphaSort) |
| std::string | MR::getFragmentShaderEndBlock (ShaderTransparencyMode transparencyMode) |
| std::string | MR::getShaderMainBeginBlock (bool addDepthPeelSamplers) |
| | MR::ShadowsGL::MR_ADD_CTOR_DELETE_MOVE (ShadowsGL) |
| | MR::ShadowsGL::~ShadowsGL () |
| void | MR::ShadowsGL::enable (bool on) |
| | subscribe to viewer events on enable, unsubscribe on disable
|
| bool | MR::ShadowsGL::isEnabled () const |
| const Vector2f & | MR::ShadowsGL::getShadowShift () const |
| | shift in screen space
|
| void | MR::ShadowsGL::setShadowShift (const Vector2f &shift) |
| const Vector4f & | MR::ShadowsGL::getShadowColor () const |
| void | MR::ShadowsGL::setShadowColor (const Vector4f &color) |
| float | MR::ShadowsGL::getBlurRadius () const |
| void | MR::ShadowsGL::setBlurRadius (float radius) |
| float | MR::ShadowsGL::getQuality () const |
| void | MR::ShadowsGL::setQuality (float quality) |
| bool | MR::ShortcutKey::operator< (const ShortcutKey &other) const |
| virtual | MR::ShortcutManager::~ShortcutManager ()=default |
| virtual void | MR::ShortcutManager::setShortcut (const ShortcutKey &key, const ShortcutCommand &command) |
| const ShortcutList & | MR::ShortcutManager::getShortcutList () const |
| bool | MR::ShortcutManager::isEnabled () const |
| | processShortcut does nothing if not enabled
|
| void | MR::ShortcutManager::enable (bool on) |
| virtual bool | MR::ShortcutManager::processShortcut (const ShortcutKey &key, Reason=Reason::KeyDown) const |
| | if given key has action in shortcut map - process it and returns true, otherwise returns false;
|
| bool | MR::ShortcutManager::onKeyDown_ (int key, int modifier) override |
| bool | MR::ShortcutManager::onKeyRepeat_ (int key, int modifier) override |
| static const char * | MR::ShortcutManager::getModifierString (int mod) |
| | make string from strictly one modifier
|
| static std::string | MR::ShortcutManager::getKeyString (int key) |
| | make string from a key without modifiers, for arrow characters it uses icons font
|
| static std::string | MR::ShortcutManager::getKeyFullString (const ShortcutKey &key, bool respectKey=true) |
| | make string from all modifiers and with/without key and returns it
|
| std::optional< ShortcutKey > | MR::ShortcutManager::findShortcutByName (const std::string &name) const |
| | if action with given name is present in shortcut list - returns it
|
| void | MR::ShortcutManager::clear () |
| | clear all saved shortcuts
|
| static int | MR::ShortcutManager::mapKeyFromKeyAndMod (const ShortcutKey &key, bool respectKeyboard) |
| static ShortcutKey | MR::ShortcutManager::kayAndModFromMapKey (int mapKey) |
| | returns key with modifier (alt, ctrl, shift, etc.) from simple map key
|
| void | MR::showModal (const std::string &error, NotificationType type) |
| | Check if menu is available and if it is, shows modal window.
|
| void | MR::showError (const std::string &error) |
| template<typename Iter> |
| bool | MR::StopOnTrueCombiner::operator() (Iter first, Iter last) const |
| | MR::SplashWindow::SplashWindow (std::string name) |
| virtual | MR::SplashWindow::~SplashWindow () |
| | Thread should be stopped before destructor.
|
| void | MR::SplashWindow::start () |
| void | MR::SplashWindow::stop () |
| | Closes splash window if it is still opened.
|
| virtual float | MR::SplashWindow::minimumTimeSec () const |
| | Returns minimum time in seconds, splash screen to be present.
|
| | MR::DefaultSplashWindow::DefaultSplashWindow () |
| | MR::StateBasePlugin::StateBasePlugin (std::string name, StatePluginTabs tab=StatePluginTabs::Other) |
| virtual | MR::StateBasePlugin::~StateBasePlugin ()=default |
| virtual void | MR::StateBasePlugin::drawDialog (ImGuiContext *ctx) |
| virtual bool | MR::StateBasePlugin::action () override |
| | returns true if state of item changed
|
| virtual bool | MR::StateBasePlugin::isActive () const override |
| | for state items returns true if activated
|
| virtual bool | MR::StateBasePlugin::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| virtual void | MR::StateBasePlugin::shutdown () override |
| | This function is called before shutdown.
|
| bool | MR::StateBasePlugin::isEnabled () const |
| virtual bool | MR::StateBasePlugin::enable (bool on) |
| virtual bool | MR::StateBasePlugin::dialogIsOpen () const |
| static const char * | MR::StateBasePlugin::UINameSuffix () |
| virtual const std::string & | MR::StateBasePlugin::uiName () const override |
| void | MR::StateBasePlugin::setUIName (std::string name) |
| | set plugin name that will be used for dialog in ImGuiBeginWindow_
|
| StatePluginTabs | MR::StateBasePlugin::getTab () const |
| static const char * | MR::StateBasePlugin::getTabName (StatePluginTabs tab) |
| virtual std::string | MR::StateBasePlugin::getTooltip () const |
| virtual std::string | MR::StateBasePlugin::sortString () const |
| | returns special string for sorting plugins in menu (plugin name by default)
|
| bool | MR::StateBasePlugin::checkStringMask (const std::string &mask) const |
| | check if search mask satisfies for this plugin
|
| virtual bool | MR::StateBasePlugin::ImGuiBeginWindow_ (ImGui::CustomStatePluginWindowParameters params) |
| virtual bool | MR::StateBasePlugin::onEnable_ () |
| virtual bool | MR::StateBasePlugin::onDisable_ () |
| virtual | MR::StateListenerPlugin< Connectables >::~StateListenerPlugin ()=default |
| virtual bool | MR::StateListenerPlugin< Connectables >::enable (bool on) override final |
| virtual | MR::IPluginUpdate::~IPluginUpdate ()=default |
| virtual void | MR::IPluginUpdate::preDrawUpdate () |
| | called each frame in before drawDialog
|
| virtual void | MR::IPluginUpdate::onPluginEnable_ () |
| | called when plugin started
|
| virtual void | MR::IPluginUpdate::onPluginDisable_ () |
| | called when plugin stops
|
| virtual bool | MR::IPluginUpdate::shouldClose_ () const |
| | called each frame, return true to close plugin
|
| virtual void | MR::PluginCloseOnSelectedObjectRemove::onPluginEnable_ () override |
| | called when plugin started
|
| virtual void | MR::PluginCloseOnSelectedObjectRemove::onPluginDisable_ () override |
| | called when plugin stops
|
| virtual bool | MR::PluginCloseOnSelectedObjectRemove::shouldClose_ () const override |
| | called each frame, return true to close plugin
|
| virtual bool | MR::PluginCloseOnChangeMesh::reactOnFaceSelectionChanges_ () const |
| | plugin can override it to make this helper class also react on face selections updates
|
| virtual void | MR::PluginCloseOnChangeMesh::onPluginEnable_ () override |
| | called when plugin started
|
| virtual void | MR::PluginCloseOnChangeMesh::onPluginDisable_ () override |
| | called when plugin stops
|
| virtual bool | MR::PluginCloseOnChangeMesh::shouldClose_ () const override |
| | called each frame, return true to close plugin
|
| void | MR::PluginUpdateOnChangeMeshPart::setUpdateFunc (UpdateFunc func) |
| | setup your update function that will be called if plugin is dirty in this frame
|
| virtual void | MR::PluginUpdateOnChangeMeshPart::preDrawUpdate () override |
| | called each frame in before drawDialog
|
| virtual void | MR::PluginUpdateOnChangeMeshPart::onPluginEnable_ () override |
| | sets dirty initially for first update, so no need to call UpdateFunc manually
|
| virtual void | MR::PluginUpdateOnChangeMeshPart::onPluginDisable_ () override |
| | clears connections and UpdateFunc
|
| virtual void | MR::PluginCloseOnChangePointCloud::onPluginEnable_ () override |
| | called when plugin started
|
| virtual void | MR::PluginCloseOnChangePointCloud::onPluginDisable_ () override |
| | called when plugin stops
|
| virtual bool | MR::PluginCloseOnChangePointCloud::shouldClose_ () const override |
| | called each frame, return true to close plugin
|
| bool | MR::PluginCloseOnEscPressed::shouldClose_ () const override |
| | called each frame, return true to close plugin
|
| virtual void | MR::PluginUpdateOr< Updates >::preDrawUpdate () override |
| virtual void | MR::PluginUpdateOr< Updates >::onPluginEnable_ () override |
| virtual void | MR::PluginUpdateOr< Updates >::onPluginDisable_ () override |
| virtual bool | MR::PluginUpdateOr< Updates >::shouldClose_ () const override |
| | MR::SurfaceManipulationWidget::SurfaceManipulationWidget () |
| virtual | MR::SurfaceManipulationWidget::~SurfaceManipulationWidget () |
| void | MR::SurfaceManipulationWidget::init (const std::shared_ptr< ObjectMesh > &objectMesh) |
| | initialize widget according ObjectMesh
|
| void | MR::SurfaceManipulationWidget::reset () |
| | reset widget state
|
| void | MR::SurfaceManipulationWidget::setFixedRegion (const FaceBitSet ®ion) |
| void | MR::SurfaceManipulationWidget::setSettings (const Settings &settings) |
| | set widget settings (mesh change settings)
|
| const Settings & | MR::SurfaceManipulationWidget::getSettings () |
| | get widget settings
|
| float | MR::SurfaceManipulationWidget::getMinRadius () |
| | minimum radius of editing area.
|
| Palette & | MR::SurfaceManipulationWidget::palette () |
| | get palette used for visualization point shifts
|
| void | MR::SurfaceManipulationWidget::updateTexture () |
| | update texture used for colorize surface (use after change colorMap in palette)
|
| void | MR::SurfaceManipulationWidget::updateUVs () |
| | update texture uv coords used for colorize surface (use after change ranges in palette)
|
| void | MR::SurfaceManipulationWidget::enableDeviationVisualization (bool enable) |
| | enable visualization of mesh deviations
|
| void | MR::SurfaceManipulationWidget::setDeviationCalculationMethod (DeviationCalculationMethod method) |
| | set method for calculating mesh changes
|
| DeviationCalculationMethod | MR::SurfaceManipulationWidget::deviationCalculationMethod () const |
| | get method for calculating mesh changes
|
| bool | MR::SurfaceManipulationWidget::sameOriginalMeshTopology () const |
| | returns true if the current object's mesh has the same topology as original input mesh (and vertices with same IDs can be compared)
|
| Vector2f | MR::SurfaceManipulationWidget::getMinMax () |
| | get min / max point shifts for (useful for setup palette)
|
| void | MR::SurfaceManipulationWidget::setIgnoreOcclusion (bool ignore) |
| | allow the user to edit parts of object that are hidden in the current view by other objects
|
| bool | MR::SurfaceManipulationWidget::ignoreOcclusion () const |
| void | MR::SurfaceManipulationWidget::setEditOnlyCodirectedSurface (bool edit) |
| | restricts editable area to vertices whose normals look into the same half-space as normal under cursor
|
| bool | MR::SurfaceManipulationWidget::isEditOnlyCodirectedSurface () const |
| | get state of an editable region restriction
|
| bool | MR::SurfaceManipulationWidget::onMouseDown_ (MouseButton button, int modifiers) override |
| | start modifying mesh surface
|
| bool | MR::SurfaceManipulationWidget::onMouseUp_ (MouseButton button, int modifiers) override |
| | stop modifying mesh surface, generate history action
|
| bool | MR::SurfaceManipulationWidget::onMouseMove_ (int mouse_x, int mouse_y) override |
| | update
|
| void | MR::SurfaceManipulationWidget::postDraw_ () override |
| | need to visualize bad region (draw grey circle)
|
| virtual bool | MR::SurfaceManipulationWidget::checkModifiers_ (int modifiers) const |
| virtual void | MR::SurfaceManipulationWidget::appendMeshDataChangeHistory_ (ObjectMeshData &&newMeshData, const FaceBitSet &newFaces) |
| void | MR::SurfaceManipulationWidget::reallocData_ (size_t size) |
| void | MR::SurfaceManipulationWidget::clearData_ () |
| void | MR::SurfaceManipulationWidget::initConnections_ () |
| void | MR::SurfaceManipulationWidget::resetConnections_ () |
| void | MR::SurfaceManipulationWidget::changeSurface_ () |
| void | MR::SurfaceManipulationWidget::updateUVmap_ (bool set, bool wholeMesh=false) |
| void | MR::SurfaceManipulationWidget::updateRegion_ (const Vector2f &mousePos) |
| void | MR::SurfaceManipulationWidget::invalidateMetricsCache_ () |
| void | MR::SurfaceManipulationWidget::abortEdit_ () |
| void | MR::SurfaceManipulationWidget::initLaplacian_ (RememberShape rs) |
| | Laplacian.
|
| void | MR::SurfaceManipulationWidget::laplacianPickVert_ (const PointOnFace &pick) |
| | for singleEditingRegion_
|
| void | MR::SurfaceManipulationWidget::laplacianMoveVert_ (const Vector2f &mousePos) |
| void | MR::SurfaceManipulationWidget::updateVizualizeSelection_ () |
| void | MR::SurfaceManipulationWidget::updateRegionUVs_ (const VertBitSet ®ion) |
| void | MR::SurfaceManipulationWidget::updateValueChanges_ (const VertBitSet ®ion) |
| void | MR::SurfaceManipulationWidget::updateValueChangesPointToPoint_ (const VertBitSet ®ion) |
| void | MR::SurfaceManipulationWidget::updateValueChangesPointToPlane_ (const VertBitSet ®ion) |
| void | MR::SurfaceManipulationWidget::updateValueChangesExactDistance_ (const VertBitSet ®ion) |
| void | MR::SurfaceManipulationWidget::createLastStableObjMesh_ () |
| void | MR::SurfaceManipulationWidget::removeLastStableObjMesh_ () |
| void | MR::SurfaceManipulationWidget::compressChangePointsAction_ () |
| void | MR::SurfaceManipulationWidget::subdivideAfterAddRemove_ () |
| void | MR::SurfaceManipulationWidget::updateDistancesAndRegion_ (const Mesh &mesh, const std::vector< MeshTriPoint > &start, VertScalars &distances, VertBitSet ®ion, const VertBitSet *untouchable) |
| | MR::SurfacePointWidget::~SurfacePointWidget () |
| const PickedPoint & | MR::SurfacePointWidget::create (const std::shared_ptr< VisualObject > &surface, const PointOnObject &startPos) |
| const PickedPoint & | MR::SurfacePointWidget::create (const std::shared_ptr< VisualObject > &surface, const PickedPoint &startPos) |
| void | MR::SurfacePointWidget::reset () |
| | resets whole widget
|
| const std::shared_ptr< SphereObject > & | MR::SurfacePointWidget::getPickSphere () const |
| | returns object of control sphere
|
| const Parameters & | MR::SurfacePointWidget::getParameters () const |
| | get current setup of this widget
|
| void | MR::SurfacePointWidget::setParameters (const Parameters ¶ms) |
| | set parameters for this widget
|
| void | MR::SurfacePointWidget::setBaseColor (const Color &color) |
| | set baseColor parameter for this widget
|
| void | MR::SurfacePointWidget::updateParameters (const std::function< void(Parameters &)> &visitor) |
| bool | MR::SurfacePointWidget::getAutoHover () const |
| void | MR::SurfacePointWidget::setAutoHover (bool on) |
| void | MR::SurfacePointWidget::setHovered (bool on) |
| const PickedPoint & | MR::SurfacePointWidget::getCurrentPosition () const |
| | returns stored position of this widget
|
| Vector3f | MR::SurfacePointWidget::getCoords () const |
| | return local object's coordinates at the current position where the center of sphere is located
|
| Vector3f | MR::SurfacePointWidget::toVector3f () const |
| std::optional< Vector3f > | MR::SurfacePointWidget::findCoords () const |
| | return local object's coordinates at the current position, or std::nullopt if it is invalid
|
| std::optional< Vector3f > | MR::SurfacePointWidget::findNormal () const |
| | return the normal in local object's coordinates at the current position, or std::nullopt if it is invalid or normal is not defined
|
| MeshTriPoint | MR::SurfacePointWidget::getCurrentPositionMeshTriPoint () const |
| | returns stored position as MeshTriPoint, otherwise returns invalid (default) MeshTriPoint
|
| void | MR::SurfacePointWidget::setCurrentPosition (const PointOnObject &pos) |
| | sets new position for the widget
|
| void | MR::SurfacePointWidget::setCurrentPosition (const PickedPoint &pos) |
| | sets new position for the widget
|
| void | MR::SurfacePointWidget::swapCurrentPosition (PickedPoint &pos) |
| | sets new position for the widget and returns previous position in the argument
|
| void | MR::SurfacePointWidget::setCanMoveCallback (std::function< bool(SurfacePointWidget &, const PickedPoint &)> canMove) |
| | this callback is called before modification starts if it is set, and can cancel it by returning false
|
| void | MR::SurfacePointWidget::setStartMoveCallback (std::function< void(SurfacePointWidget &, const PickedPoint &)> startMove) |
| | this callback is called when modification starts if it is set
|
| void | MR::SurfacePointWidget::setOnMoveCallback (std::function< void(SurfacePointWidget &, const PickedPoint &)> onMove) |
| | this callback is called on modification if it is set
|
| void | MR::SurfacePointWidget::setEndMoveCallback (std::function< void(SurfacePointWidget &, const PickedPoint &)> endMove) |
| | this callback is called when modification ends if it is set
|
| std::shared_ptr< VisualObject > & | MR::SurfacePointWidget::getBaseSurface () |
| bool | MR::SurfacePointWidget::isOnMove () const |
| | returns whether is the widget moving
|
| static bool | MR::SurfacePointWidget::isPickIntoBackFace (const std::shared_ptr< MR::VisualObject > &obj, const MR::PointOnObject &pick, const Vector3f &cameraEye) |
| | Checks whether the current peak is a peak in the invisible (reverse) side of the mesh or cloud point.
|
| bool | MR::SurfacePointWidget::startDragging () |
| | MR::SwapRootAction::SwapRootAction (const std::string &name) |
| | Constructed from original root.
|
| virtual std::string | MR::SwapRootAction::name () const override |
| virtual void | MR::SwapRootAction::action (HistoryAction::Type) override |
| | This function is called on history action (undo, redo, etc.)
|
| virtual size_t | MR::SwapRootAction::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| void | MR::Toolbar::setRibbonMenu (RibbonMenu *ribbonMenu) |
| | set pointer on ribbon menu to access it
|
| void | MR::Toolbar::drawToolbar () |
| float | MR::Toolbar::getCurrentToolbarWidth () const |
| void | MR::Toolbar::openCustomize () |
| | enable toolbar customize window rendering
|
| void | MR::Toolbar::drawCustomize () |
| void | MR::Toolbar::readItemsList (const Json::Value &root) |
| | read toolbar items from json
|
| void | MR::Toolbar::resetItemsList () |
| const MenuItemsList & | MR::Toolbar::getItemsList () const |
| | get access to items
|
| int | MR::Toolbar::getItemsListVersion () const |
| | get item list version
|
| void | MR::Toolbar::setItemsListVersion (int version) |
| | set item list version
|
| void | MR::Toolbar::setItemsListMigrations (const MenuItemsListMigrations &migrations) |
| | set item list's upgrade rules
|
| void | MR::Toolbar::setMaxItemCount (int maxItemCount) |
| int | MR::Toolbar::getMaxItemCount () const |
| | MR::GcodeToolsLibrary::GcodeToolsLibrary (const std::string &libraryName) |
| bool | MR::GcodeToolsLibrary::drawInterface () |
| | draw interface for interacting with storage (based on UI::combo)
|
| bool | MR::GcodeToolsLibrary::drawCreateToolDialog () |
| const std::shared_ptr< ObjectMesh > & | MR::GcodeToolsLibrary::getToolObject () |
| | get selected tool as ObjectMesh
|
| const std::shared_ptr< EndMillTool > & | MR::GcodeToolsLibrary::getEndMillTool () const |
| | get selected tool as EndMillTool (if available)
|
| void | MR::GcodeToolsLibrary::setAutoSize (float size) |
| | set object specific size for automatic resize default object
|
| | MR::TouchesController::MR_ADD_CTOR_DELETE_MOVE (TouchesController) |
| void | MR::TouchesController::setTrasformModifierCb (std::function< void(AffineXf3f &)> cb) |
| | set callback to modify view transform before it is applied to viewport
|
| ModeBit | MR::TouchesController::getModeMask () const |
| | mode mask can block some modes when two finger controll camera
|
| void | MR::TouchesController::setModeMask (ModeBit mask) |
| bool | MR::TouchesController::MultiInfo::update (Info info, bool remove=false) |
| std::optional< Vector2f > | MR::TouchesController::MultiInfo::getPosition (Finger fing) const |
| std::optional< Vector2f > | MR::TouchesController::MultiInfo::getPosition (int id) const |
| std::optional< Finger > | MR::TouchesController::MultiInfo::getFingerById (int id) const |
| std::optional< int > | MR::TouchesController::MultiInfo::getIdByFinger (Finger fing) const |
| int | MR::TouchesController::MultiInfo::getNumPressed () const |
| | MR::TouchpadController::MR_ADD_CTOR_DELETE_MOVE (TouchpadController) |
| void | MR::TouchpadController::initialize (GLFWwindow *window) |
| | initialize listening to touchpad events
|
| void | MR::TouchpadController::reset () |
| | reset event handler
|
| const TouchpadParameters & | MR::TouchpadController::getParameters () const |
| void | MR::TouchpadController::setParameters (const TouchpadParameters ¶meters) |
| virtual | MR::TouchpadController::Handler::~Handler ()=default |
| void | MR::TouchpadController::Handler::mouseScroll (float dx, float dy, bool kinetic) |
| void | MR::TouchpadController::Handler::rotate (float angle, GestureState state) |
| | rotate gesture
|
| void | MR::TouchpadController::Handler::swipe (float dx, float dy, bool kinetic, GestureState state) |
| | swipe gesture; kinetic flag is set when the event is produced not by a user action but by hardware 'kinetic' scrolling
|
| void | MR::TouchpadController::Handler::zoom (float scale, bool kinetic, GestureState state) |
| | pitch ('zoom') gesture
|
| void | MR::UI::saveChangesPopup (const char *str_id, const SaveChangesPopupSettings &settings={}) |
| float | MR::UI::scale () |
| | Returns the global UI scale. Use this instead of passing around the scale in parameters.
|
| void | MR::UI::detail::setScale (float newScale) |
| | Strictly for internal use. Updates the value that scale() returns.
|
| bool | MR::UI::isItemActive (const char *name) |
| | Checks if the item with this name in the current window is active.
|
| bool | MR::UI::StateStorage::readBool (std::string_view key, bool defaultValue=false) |
| void | MR::UI::StateStorage::writeBool (std::string_view key, bool value) |
| std::unique_ptr< ImGuiImage > & | MR::UI::getTexture (TextureType type) |
| | get texture by type
|
| void | MR::UI::init () |
| | init internal parameters
|
| ImGuiKey | MR::UI::getImGuiModPrimaryCtrl () |
| | returns imgui modifier Id based on current environment
|
| const char * | MR::UI::getImGuiPrimaryCtrlName () |
| | returns "Ctrl" by default or "Command" if ImGui has changed it internally for macos
|
| bool | MR::UI::checkKey (ImGuiKey passedKey) |
| | returns true if button is pressed in this frame, preserve its further processing in viewer keyboard events system if taken here
|
| bool | MR::UI::buttonEx (const char *label, bool active, const Vector2f &size=Vector2f(0, 0), ImGuiButtonFlags flags=ImGuiButtonFlags_None, const ButtonCustomizationParams &customParams={}) |
| | draw gradient button, which can be disabled (active = false)
|
| bool | MR::UI::buttonEx (const char *label, const Vector2f &size=Vector2f(0, 0), const ButtonCustomizationParams &customParams={}) |
| | draw gradient button, which can be customized
|
| bool | MR::UI::button (const char *label, bool active, const Vector2f &size=Vector2f(0, 0), ImGuiKey key=ImGuiKey_None) |
| bool | MR::UI::button (const char *label, const Vector2f &size=Vector2f(0, 0), ImGuiKey key=ImGuiKey_None) |
| bool | MR::UI::buttonCommonSize (const char *label, const Vector2f &size=Vector2f(0, 0), ImGuiKey key=ImGuiKey_None) |
| bool | MR::UI::buttonUnique (const char *label, int *value, int ownValue, const Vector2f &size=Vector2f(0, 0), ImGuiKey key=ImGuiKey_None) |
| | draw button with same logic as radioButton
|
| void | MR::UI::drawPoltHorizontalAxis (const PlotAxis &plotAxis) |
| | draw dash with text along the horizontal axis
|
| void | MR::UI::drawPoltVerticalAxis (const PlotAxis &plotAxis) |
| | draw dash with text along the vertical axis
|
| bool | MR::UI::buttonIconEx (const std::string &name, const Vector2f &iconSize, const std::string &text, const ImVec2 &buttonSize, const ButtonIconCustomizationParams ¶ms={}) |
| | draw a button with an icon and text under it
|
| bool | MR::UI::buttonIcon (const std::string &name, const Vector2f &iconSize, const std::string &text, const ImVec2 &buttonSize) |
| | button with a gradient, always active
|
| bool | MR::UI::buttonIconFlatBG (const std::string &name, const Vector2f &iconSize, const std::string &text, const ImVec2 &buttonSize, bool textUnderIcon=true, ImGuiKey key=ImGuiKey_None) |
| | button without a gradient, always active, configurable by an external style
|
| bool | MR::UI::buttonUniqueIcon (const std::string &iconName, const Vector2f &iconSize, const std::string &text, const ImVec2 &buttonSize, int *value, int ownValue, bool textUnderIcon=true, ImGuiKey key=ImGuiKey_None) |
| bool | MR::UI::toggle (const char *label, bool *value) |
| | draws checkbox-like toggle (enabled/disabled states)(O=)/(=O)
|
| bool | MR::UI::checkbox (const char *label, bool *value) |
| | draw gradient checkbox
|
| bool | MR::UI::checkboxOrFixedValue (const char *label, bool *value, std::optional< bool > valueOverride) |
| | If valueOverride is specified, then the checkbox is disabled and that value is displayed instead of value.
|
| bool | MR::UI::checkboxValid (const char *label, bool *value, bool valid) |
| | If valid is false checkbox is disabled. Same as checkboxOrFixedValue( ..., valid ? nullopt : false ).
|
| bool | MR::UI::checkboxMixed (const char *label, bool *value, bool mixed) |
| | draw gradient checkbox with mixed state
|
| template<typename Getter, typename Setter> |
| bool | MR::UI::checkbox (const char *label, Getter get, Setter set) |
| | draw gradient checkbox
|
| template<typename Getter, typename Setter> |
| bool | MR::UI::checkboxValid (const char *label, Getter get, Setter set, bool valid) |
| template<typename T> |
| bool | MR::UI::checkboxFlags (const char *label, T &target, T flags) |
| | Draw a checkbox toggling one or more bits in the mask.
|
| | MR::UI::CheckboxOrModifierState::CheckboxOrModifierState () |
| | MR::UI::CheckboxOrModifierState::CheckboxOrModifierState (bool baseValue) |
| | MR::UI::CheckboxOrModifierState::operator bool () const |
| bool | MR::UI::checkboxOrModifier (const char *label, CheckboxOrModifierState &value, int modifiers, int respectedModifiers=-1, std::optional< bool > valueOverride={}) |
| bool | MR::UI::radioButton (const char *label, int *value, int valButton) |
| | draw gradient radio button
|
| bool | MR::UI::radioButtonOrFixedValue (const char *label, int *value, int valButton, std::optional< int > valueOverride) |
| | If valueOverride is specified, then the radio button is disabled and that value is displayed instead of value.
|
| | MR::UI::RadioButtonOrModifierState::operator int () const |
| | The effective value, affected by modifiers.
|
| bool | MR::UI::radioButtonOrModifier (const char *label, RadioButtonOrModifierState &value, int valButton, int modifiers, int respectedModifiers=-1, std::optional< int > valueOverride={}) |
| bool | MR::UI::colorEdit4 (const char *label, Vector4f &color, ImGuiColorEditFlags flags=ImGuiColorEditFlags_None) |
| | draw gradient color edit 4
|
| bool | MR::UI::colorEdit4 (const char *label, Color &color, ImGuiColorEditFlags flags=ImGuiColorEditFlags_None) |
| bool | MR::UI::combo (const char *label, int *v, const std::vector< std::string > &options, bool showPreview=true, const std::vector< std::string > &tooltips={}, const std::string &defaultText="Not selected") |
| | draw combo box
|
| bool | MR::UI::beginCombo (const char *label, const std::string &text, bool enableTestEngine=true) |
| void | MR::UI::endCombo () |
| | Only call this if beginCombo() returned true!
|
| bool | MR::UI::comboElem (const char *label, bool selected) |
| | A replacement for ImGui::Selectable() that should be used with beginCombo() and endCombo() to be able to interact with the combo-box from the UI Test Engine.
|
| bool | MR::UI::inputText (const char *label, std::string &str, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| | Draws text input, should be used instead of ImGui::InputText().
|
| bool | MR::UI::inputTextIntoArray (const char *label, char *array, std::size_t size, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| | This overload is for arrays, as opposed to std::strings.
|
| bool | MR::UI::inputTextMultiline (const char *label, std::string &str, const ImVec2 &size=ImVec2(), ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| | Draws multiline text input, should be used instead of ImGui::InputTextMultiline().
|
| bool | MR::UI::inputTextIntoArrayMultiline (const char *label, char *buf, size_t buf_size, const ImVec2 &size=ImVec2(), ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| | This overload is for arrays, as opposed to std::strings.
|
| bool | MR::UI::inputTextMultilineFullyScrollable (CachedTextSize &cache, const char *label, std::string &str, const ImVec2 &size=ImVec2(), ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| | This version adds a horizontal scrollbar. Also it never draws the label, and uses full window width by default (so you can pass 0 as width).
|
| bool | MR::UI::inputTextIntoArrayMultilineFullyScrollable (CachedTextSize &cache, const char *label, char *buf, size_t buf_size, const ImVec2 &size=ImVec2(), ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| bool | MR::UI::inputTextCentered (const char *label, std::string &str, float width=0.0f, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=nullptr, void *user_data=nullptr) |
| | draw input text box with text aligned by center
|
| void | MR::UI::inputTextCenteredReadOnly (const char *label, const std::string &str, float width=0.0f, const std::optional< ImVec4 > &textColor={}, const std::optional< ImVec4 > &labelColor={}) |
| | draw read-only text box with text aligned by center
|
| bool | MR::UI::detail::genericSlider (const char *label, ImGuiDataType data_type, void *p_data, const void *p_min, const void *p_max, const char *format, ImGuiSliderFlags flags) |
| | A type-erased slider.
|
| template<UnitEnum E, VectorOrScalar T, typename F> |
| bool | MR::UI::detail::unitWidget (const char *label, T &v, UnitToStringParams< E > &unitParams, F &&func) |
template<UnitEnum E, detail::VectorOrScalar T>
requires ( VectorTraits<T>::size == 1 ) |
| float | MR::UI::getDefaultDragSpeed () |
| | Default drag speed for UI::drag().
|
| template<UnitEnum E, detail::VectorOrScalar T, detail::VectorOrScalar TargetType> |
| T | MR::UI::getDefaultStep (bool fast) |
| | Default step speed for UI::input().
|
| template<UnitEnum E, detail::VectorOrScalar T, detail::ValidBoundForTargetType< T > U = typename VectorTraits<T>::BaseType> |
| bool | MR::UI::slider (const char *label, T &v, const U &vMin, const U &vMax, UnitToStringParams< E > unitParams={}, ImGuiSliderFlags flags=defaultSliderFlags) |
| template<UnitEnum E, detail::VectorOrScalar T, detail::ValidDragSpeedForTargetType< T > SpeedType = float, detail::ValidBoundForTargetType< T > U = typename VectorTraits<T>::BaseType> |
| bool | MR::UI::drag (const char *label, T &v, SpeedType vSpeed=getDefaultDragSpeed< E, SpeedType >(), const U &vMin=std::numeric_limits< U >::lowest(), const U &vMax=std::numeric_limits< U >::max(), UnitToStringParams< E > unitParams={}, ImGuiSliderFlags flags=defaultSliderFlags, const U &step=getDefaultStep< E, U, T >(false), const U &stepFast=getDefaultStep< E, U, T >(true)) |
| template<UnitEnum E, detail::VectorOrScalar T, detail::ValidBoundForTargetType< T > U = typename VectorTraits<T>::BaseType> |
| bool | MR::UI::input (const char *label, T &v, const U &vMin=std::numeric_limits< U >::lowest(), const U &vMax=std::numeric_limits< U >::max(), UnitToStringParams< E > unitParams={}, ImGuiSliderFlags flags=defaultSliderFlags) |
| | Like drag(), but clicking it immediately activates text input, so it's not actually draggable.
|
| template<UnitEnum E, detail::VectorOrScalar T> |
| void | MR::UI::readOnlyValue (const char *label, const T &v, std::optional< ImVec4 > textColor={}, UnitToStringParams< E > unitParams={}, std::optional< ImVec4 > labelColor={}) |
| template<UnitEnum E, detail::Scalar T, typename F> |
| bool | MR::UI::plusMinusGeneric (const char *label, T &plus, T &minus, UnitToStringParams< E > unitToStringParams, F &&func) |
| template<UnitEnum E, detail::Scalar T, detail::ValidDragSpeedForTargetType< T > SpeedType = float, typename F = std::nullptr_t> |
| bool | MR::UI::dragPlusMinus (const char *label, T &plus, T &minus, SpeedType speed=getDefaultDragSpeed< E, SpeedType >(), T plusMin=T{}, T plusMax=std::numeric_limits< T >::max(), UnitToStringParams< E > unitParams={}, ImGuiSliderFlags flags=defaultSliderFlags, F &&wrapFunc=nullptr) |
| template<UnitEnum E, detail::Scalar T, typename F = std::nullptr_t> |
| bool | MR::UI::inputPlusMinus (const char *label, T &plus, T &minus, T plusMin=T{}, T plusMax=std::numeric_limits< T >::max(), UnitToStringParams< E > unitParams={}, ImGuiSliderFlags flags=defaultSliderFlags, F &&wrapFunc=nullptr) |
| const std::pair< const char *, ImU32 > & | MR::UI::notificationChar (NotificationType type) |
| | returns icons font character for given notification type, and its color
|
| void | MR::UI::mouseControlHint (ImGuiMouseButton btn, const std::string &hint) |
| | draws hint with corresponding mouse btn icon
|
| void | MR::UI::transparentText (const char *fmt,...) |
| | similar to ImGui::Text but use current text color with alpha channel = 0.5
|
| void | MR::UI::transparentTextWrapped (const char *fmt,...) |
| | similar to ImGui::TextWrapped but use current text color with alpha channel = 0.5
|
| void | MR::UI::notificationFrame (NotificationType type, const std::string &str) |
| | similar to ImGui::TextWrapped but also have styled background and notification type indicator
|
| void | MR::UI::setTooltipIfHovered (const std::string &text) |
| | draw tooltip only if current item is hovered
|
| void | MR::UI::separator (const SeparatorParams ¶ms) |
| | separator line with customizations
|
| void | MR::UI::separator (const std::string &text="", int issueCount=-1) |
| void | MR::UI::separator (const std::string &text, const ImVec4 &color, const std::string &issueCount) |
| void | MR::UI::separator (const ImGuiImage &icon, const std::string &text, const Vector2f &iconSize={ 24.f, 24.f }) |
| void | MR::UI::separator (const std::string &iconName, const std::string &text, const Vector2f &iconSize={ 24.f, 24.f }) |
| void | MR::UI::progressBar (float fraction, const Vector2f &size=Vector2f(-1, 0)) |
| bool | MR::UI::beginTabBar (const char *str_id, ImGuiTabBarFlags flags=0) |
| | create and append items into a TabBar: see corresponding ImGui:: functions
|
| void | MR::UI::endTabBar () |
| bool | MR::UI::beginTabItem (const char *label, bool *p_open=NULL, ImGuiTabItemFlags flags=0) |
| void | MR::UI::endTabItem () |
| void | MR::UI::alignTextToFramePadding (float padding) |
| void | MR::UI::alignTextToControl (float controlHeight) |
| void | MR::UI::alignTextToRadioButton () |
| | Specialization of alignTextToFramePadding for UI::radioButton.
|
| void | MR::UI::alignTextToCheckBox () |
| | Specialization of alignTextToFramePadding for UI::checkbox.
|
| void | MR::UI::alignTextToButton () |
| | Specialization of alignTextToFramePadding for UI::button with default height.
|
| void | MR::UI::highlightWindowArea (const ImVec2 &min={-1.0f, -1.0f}, const ImVec2 &max={ -1.0f, -1.0f }) |
| std::string | MR::UI::CustomConfigModalSettings::popupName () const |
| | returns accumulated name of the popup
|
| void | MR::UI::saveCustomConfigModal (const CustomConfigModalSettings &settings) |
| | Draw modal window to save user configs (for example Palettes)
|
| | MR::UI::Disabler::Disabler (ImDrawList &list, ImDrawFlags mask) |
| | MR::UI::Disabler::Disabler (const Disabler &)=delete |
| Disabler & | MR::UI::Disabler::operator= (const Disabler &)=delete |
| | MR::UI::Disabler::~Disabler () |
| | MR::UI::LineAntialiasingDisabler::LineAntialiasingDisabler (ImDrawList &list) |
| template<UnitEnum E> |
| const UnitToStringParams< E > & | MR::getDefaultUnitParams () |
| template<UnitEnum E> |
| void | MR::setDefaultUnitParams (const UnitToStringParams< E > &newParams) |
| | Modifies the default parameters for converting a specific unit type to a string.
|
| std::string_view | MR::toString (DegreesMode mode) |
| template<UnitEnum E, detail::Units::Scalar T> |
| std::string | MR::valueToString (T value, const UnitToStringParams< E > ¶ms=getDefaultUnitParams< E >()) |
| template<detail::Units::Scalar T> |
| std::string | MR::valueToString (T value, const VarUnitToStringParams ¶ms) |
| | This overload lets you select the unit kind at runtime.
|
| template<detail::Units::Scalar T> |
| int | MR::guessPrecision (T value) |
| | Same but for vectors.
|
| template<detail::Units::Scalar T> |
| int | MR::guessPrecision (T min, T max) |
| template<UnitEnum E, detail::Units::Scalar T> |
| std::string | MR::valueToImGuiFormatString (T value, const UnitToStringParams< E > ¶ms=getDefaultUnitParams< E >()) |
| template<detail::Units::Scalar T> |
| std::string | MR::valueToImGuiFormatString (T value, const VarUnitToStringParams ¶ms) |
| | This overload lets you select the unit kind at runtime.
|
| template<typename U> |
| static auto && | MR::VectorTraits< ImVec2 >::getElem (int i, U &&value) |
| template<typename U = ImVec2> |
| static constexpr U | MR::VectorTraits< ImVec2 >::diagonal (float v) |
| | Adding a template parameter to avoid including the whole imgui.h.
|
| template<typename U> |
| static auto && | MR::VectorTraits< ImVec4 >::getElem (int i, U &&value) |
| template<typename U = ImVec4> |
| static constexpr U | MR::VectorTraits< ImVec4 >::diagonal (float v) |
| | Adding a template parameter to avoid including the whole imgui.h.
|
| static void | MR::Viewer::parseLaunchParams (LaunchParams ¶ms) |
| | Accumulate launch params from cmd args.
|
| int | MR::Viewer::launch (const LaunchParams ¶ms) |
| | Launch viewer with given params.
|
| void | MR::Viewer::launchEventLoop () |
| | Starts event loop.
|
| void | MR::Viewer::launchShut () |
| | Terminate window.
|
| bool | MR::Viewer::isLaunched () const |
| const LaunchParams & | MR::Viewer::getLaunchParams () const |
| | get full parameters with witch viewer was launched
|
| static Viewer * | MR::Viewer::instance () |
| | provides non const access to viewer
|
| static Viewer & | MR::Viewer::instanceRef () |
| static const Viewer * | MR::Viewer::constInstance () |
| | provide const access to viewer
|
| static const Viewer & | MR::Viewer::constInstanceRef () |
| template<typename PluginType> |
| PluginType * | MR::Viewer::getPluginInstance () |
| bool | MR::Viewer::isSupportedFormat (const std::filesystem::path &file_name) |
| bool | MR::Viewer::loadFiles (const std::vector< std::filesystem::path > &filesList, const FileLoadOptions &options) |
| bool | MR::Viewer::loadFiles (const std::vector< std::filesystem::path > &filesList) |
| bool | MR::Viewer::saveToFile (const std::filesystem::path &mesh_file_name) |
| | Save first selected objects to file.
|
| bool | MR::Viewer::keyPressed (unsigned int unicode_key, int modifier) |
| | Callbacks.
|
| bool | MR::Viewer::keyDown (int key, int modifier) |
| bool | MR::Viewer::keyUp (int key, int modifier) |
| bool | MR::Viewer::keyRepeat (int key, int modifier) |
| bool | MR::Viewer::mouseDown (MouseButton button, int modifier) |
| bool | MR::Viewer::mouseUp (MouseButton button, int modifier) |
| bool | MR::Viewer::mouseMove (int mouse_x, int mouse_y) |
| bool | MR::Viewer::mouseScroll (float delta_y) |
| bool | MR::Viewer::mouseClick (MouseButton button, int modifier) |
| bool | MR::Viewer::dragStart (MouseButton button, int modifier) |
| bool | MR::Viewer::dragEnd (MouseButton button, int modifier) |
| bool | MR::Viewer::drag (int mouse_x, int mouse_y) |
| bool | MR::Viewer::spaceMouseMove (const Vector3f &translate, const Vector3f &rotate) |
| bool | MR::Viewer::spaceMouseDown (int key) |
| bool | MR::Viewer::spaceMouseUp (int key) |
| bool | MR::Viewer::spaceMouseRepeat (int key) |
| bool | MR::Viewer::dragDrop (const std::vector< std::filesystem::path > &paths) |
| bool | MR::Viewer::touchStart (int id, int x, int y) |
| | Touch callbacks (now used in EMSCRIPTEN build only)
|
| bool | MR::Viewer::touchMove (int id, int x, int y) |
| bool | MR::Viewer::touchEnd (int id, int x, int y) |
| bool | MR::Viewer::touchpadRotateGestureBegin () |
| | Touchpad gesture callbacks.
|
| bool | MR::Viewer::touchpadRotateGestureUpdate (float angle) |
| bool | MR::Viewer::touchpadRotateGestureEnd () |
| bool | MR::Viewer::touchpadSwipeGestureBegin () |
| bool | MR::Viewer::touchpadSwipeGestureUpdate (float dx, float dy, bool kinetic) |
| bool | MR::Viewer::touchpadSwipeGestureEnd () |
| bool | MR::Viewer::touchpadZoomGestureBegin () |
| bool | MR::Viewer::touchpadZoomGestureUpdate (float scale, bool kinetic) |
| bool | MR::Viewer::touchpadZoomGestureEnd () |
| bool | MR::Viewer::interruptWindowClose () |
| | This function is called when window should close, if return value is true, window will stay open.
|
| void | MR::Viewer::draw (bool force=false) |
| | Draw everything.
|
| void | MR::Viewer::drawFull (bool dirtyScene) |
| | Draw 3d scene with UI.
|
| void | MR::Viewer::drawScene (FramebufferData *framebuffer) |
| void | MR::Viewer::setSceneDirty () |
| | Call this function to force redraw scene into scene texture.
|
| void | MR::Viewer::setupScene () |
| | Setup viewports views.
|
| void | MR::Viewer::clearFramebuffers () |
| | Cleans framebuffers for all viewports (sets its background)
|
| void | MR::Viewer::resize (int w, int h) |
| | OpenGL context resize.
|
| void | MR::Viewer::postResize (int w, int h) |
| | explicitly set framebuffer size
|
| void | MR::Viewer::postSetPosition (int xPos, int yPos) |
| | external resize due to user interaction
|
| void | MR::Viewer::postSetMaximized (bool maximized) |
| | external set position due to user interaction
|
| void | MR::Viewer::postSetIconified (bool iconified) |
| | external set maximized due to user interaction
|
| void | MR::Viewer::postFocus (bool focused) |
| | external set iconified due to user interaction
|
| void | MR::Viewer::postRescale (float x, float y) |
| | external focus handler due to user interaction
|
| void | MR::Viewer::postClose () |
| | external rescale due to user interaction
|
| void | MR::Viewer::set_root (SceneRootObject &newRoot) |
| | called when close signal received
|
| void | MR::Viewer::clearScene () |
| | removes all objects from scene
|
| Viewport & | MR::Viewer::viewport (ViewportId viewportId={}) |
| | Multi-viewport methods ///.
|
| const Viewport & | MR::Viewer::viewport (ViewportId viewportId={}) const |
| ViewportId | MR::Viewer::append_viewport (const ViewportRectangle &viewportRect, bool append_empty=false) |
| Box2f | MR::Viewer::getViewportsBounds () const |
| bool | MR::Viewer::erase_viewport (const size_t index) |
| bool | MR::Viewer::erase_viewport (ViewportId viewport_id) |
| int | MR::Viewer::viewport_index (ViewportId viewport_id) const |
| ViewportId | MR::Viewer::getHoveredViewportId () const |
| ViewportId | MR::Viewer::getHoveredViewportIdOrInvalid () const |
| | Same, but returns an invalid ID if no viewport is hovered, instead of returning the last selected viewport.
|
| void | MR::Viewer::select_hovered_viewport () |
| | Change selected_core_index to the viewport containing the mouse.
|
| void | MR::Viewer::fitDataViewport (MR::ViewportMask vpList=MR::ViewportMask::all(), float fill=0.6f, bool snapView=true) |
| void | MR::Viewer::fitBoxViewport (const Box3f &box, MR::ViewportMask vpList=MR::ViewportMask::all(), float fill=0.6f, bool snapView=true) |
| void | MR::Viewer::preciseFitDataViewport (MR::ViewportMask vpList=MR::ViewportMask::all()) |
| void | MR::Viewer::preciseFitDataViewport (MR::ViewportMask vpList, const FitDataParams ¶m) |
| size_t | MR::Viewer::getTotalFrames () const |
| size_t | MR::Viewer::getSwappedFrames () const |
| size_t | MR::Viewer::getFPS () const |
| double | MR::Viewer::getPrevFrameDrawTimeMillisec () const |
| size_t | MR::Viewer::getStaticGLBufferSize () const |
| | Returns memory amount used by shared GL memory buffer.
|
| void | MR::Viewer::incrementForceRedrawFrames (int i=1, bool swapOnLastOnly=false) |
| void | MR::Viewer::forceSwapOnFrame (int i=0) |
| | Forces redraw no later than the specified number of frames.
|
| bool | MR::Viewer::isCurrentFrameSwapping () const |
| | Returns true if current frame will be shown on display.
|
| size_t | MR::Viewer::getEventsCount (EventType type) const |
| | Returns number of events of given type.
|
| size_t | MR::Viewer::getLastFrameGLPrimitivesCount (GLPrimitivesType type) const |
| | Returns number of events of given type.
|
| void | MR::Viewer::incrementThisFrameGLPrimitivesCount (GLPrimitivesType type, size_t num) |
| | Increment number of gl primitives drawed in this frame.
|
| ViewportMask | MR::Viewer::getPresentViewports () const |
| | Returns mask of present viewports.
|
| void | MR::Viewer::resetAllCounters () |
| | Restes frames counter and events counter.
|
| Image | MR::Viewer::captureSceneScreenShot (const Vector2i &resolution=Vector2i(), bool transparentBg=false) |
| void | MR::Viewer::captureUIScreenShot (std::function< void(const Image &)> callback, const Vector2i &pos=Vector2i(), const Vector2i &size=Vector2i()) |
| bool | MR::Viewer::isAlphaSortAvailable () const |
| | Returns true if can enable alpha sort.
|
| bool | MR::Viewer::enableAlphaSort (bool on) |
| bool | MR::Viewer::isAlphaSortEnabled () const |
| | Returns true if alpha sort is enabled, false otherwise.
|
| int | MR::Viewer::getDepthPeelNumPasses () const |
| | Returns number of passes performed by depth peeler.
|
| void | MR::Viewer::setDepthPeelNumPasses (int numPasses) |
| | Sets desired number of passes to depth peeler.
|
| bool | MR::Viewer::isDepthPeelingEnabled () const |
| | Returns true if depth peeling is enabled, false otherwise.
|
| bool | MR::Viewer::isSceneTextureBound () const |
| | Returns if scene texture is now bound.
|
| void | MR::Viewer::bindSceneTexture (bool bind) |
| bool | MR::Viewer::isSceneTextureEnabled () const |
| | Returns true if 3d scene is rendering in scene texture instead of main framebuffer.
|
| int | MR::Viewer::getMSAA () const |
| void | MR::Viewer::requestChangeMSAA (int newMSAA) |
| int | MR::Viewer::getRequestedMSAA () const |
| | Returns MSAA level that have been requested (might be different from actual MSAA using, because of GPU limitations or need to restart app)
|
| void | MR::Viewer::setViewportSettingsManager (std::unique_ptr< IViewerSettingsManager > mng) |
| const std::unique_ptr< IViewerSettingsManager > & | MR::Viewer::getViewerSettingsManager () const |
| PointInAllSpaces | MR::Viewer::getPixelPointInfo (const Vector3f &screenPoint) const |
| | Finds point in all spaces from screen space pixel point.
|
| PointInAllSpaces | MR::Viewer::getMousePointInfo () const |
| | Finds point under mouse in all spaces and under mouse viewport id.
|
| Vector3f | MR::Viewer::screenToViewport (const Vector3f &screenPoint, ViewportId id) const |
| Vector3f | MR::Viewer::viewportToScreen (const Vector3f &viewportPoint, ViewportId id) const |
| std::vector< std::reference_wrapper< Viewport > > | MR::Viewer::getViewports (ViewportMask mask=ViewportMask::any()) |
| | Returns viewports satisfying given mask.
|
| void | MR::Viewer::enableGlobalHistory (bool on) |
| | Enables or disables global history (clears it on disable)
|
| bool | MR::Viewer::isGlobalHistoryEnabled () const |
| | Return true if global history is enabled, false otherwise.
|
| void | MR::Viewer::appendHistoryAction (const std::shared_ptr< HistoryAction > &action) |
| bool | MR::Viewer::globalHistoryUndo () |
| bool | MR::Viewer::globalHistoryRedo () |
| HistoryStore * | MR::Viewer::getGlobalHistoryStore () const |
| const std::shared_ptr< SpaceMouse::Handler > & | MR::Viewer::getSpaceMouseHandler () const |
| | Return spacemouse handler.
|
| void | MR::Viewer::onSceneSaved (const std::filesystem::path &savePath, bool storeInRecent=true) |
| | This method is called after successful scene saving to update scene root, window title and undo.
|
| const std::shared_ptr< ImGuiMenu > & | MR::Viewer::getMenuPlugin () const |
| | Get/Set menu plugin (which is separated from other plugins to be inited first before splash window starts)
|
| void | MR::Viewer::setMenuPlugin (std::shared_ptr< ImGuiMenu > menu) |
| std::shared_ptr< RibbonMenu > | MR::Viewer::getRibbonMenu () const |
| | get menu plugin casted in RibbonMenu
|
| template<typename T> |
| std::shared_ptr< T > | MR::Viewer::getMenuPluginAs () const |
| | Get the menu plugin casted in given type.
|
| void | MR::Viewer::stopEventLoop () |
| | sets stop event loop flag (this flag is glfwShouldWindowClose equivalent)
|
| bool | MR::Viewer::getStopEventLoopFlag () const |
| | get stop event loop flag (this flag is glfwShouldWindowClose equivalent)
|
| bool | MR::Viewer::windowShouldClose () |
| bool | MR::Viewer::isGLInitialized () const |
| void | MR::Viewer::makeTitleFromSceneRootPath () |
| | update the title of the main window and, if any scene was opened, show its filename
|
| bool | MR::Viewer::hasScaledFramebuffer () const |
| | returns true if the system framebuffer is scaled (valid for macOS and Wayland)
|
| ViewerSignals & | MR::Viewer::signals () |
| | return the structure with all viewer's signals
|
| void | MR::Viewer::emplaceEvent (std::string name, ViewerEventCallback cb, bool skipable=false) |
| void | MR::Viewer::popEventByName (const std::string &name) |
| | pop all events from the queue while they have this name
|
| void | MR::Viewer::postEmptyEvent () |
| const TouchpadController & | MR::Viewer::touchpadController () const |
| TouchpadController & | MR::Viewer::touchpadController () |
| const SpaceMouse::Controller & | MR::Viewer::spaceMouseController () const |
| SpaceMouse::Controller & | MR::Viewer::spaceMouseController () |
| const MouseController & | MR::Viewer::mouseController () const |
| MouseController & | MR::Viewer::mouseController () |
| const RecentFilesStore & | MR::Viewer::recentFilesStore () const |
| | Store of recently opened files.
|
| RecentFilesStore & | MR::Viewer::recentFilesStore () |
| bool | MR::Viewer::getSortDroppedFiles () const |
| | returns whether to sort the filenames received from Drag&Drop in lexicographical order before adding them in scene
|
| void | MR::Viewer::setSortDroppedFiles (bool value) |
| | sets whether to sort the filenames received from Drag&Drop in lexicographical order before adding them in scene
|
| void | MR::Viewer::drawUiRenderObjects () |
| | draw 2d (UI) part of objects in scene
|
| bool | MR::Viewer::isMultiViewportAvailable () |
| void | MR::Viewer::EventsCounter::reset () |
| void | MR::Viewer::GLPrimitivesCounter::reset () |
| int | MR::launchDefaultViewer (const Viewer::LaunchParams ¶ms, const ViewerSetup &setup) |
| | starts default viewer with given params and setup
|
| void | MR::ViewerEventQueue::emplace (std::string name, ViewerEventCallback cb, bool skipable=false) |
| void | MR::ViewerEventQueue::execute () |
| | execute all events in queue
|
| void | MR::ViewerEventQueue::popByName (const std::string &name) |
| | pop all events while they have this name
|
| bool | MR::ViewerEventQueue::empty () const |
| virtual | MR::IConnectable::~IConnectable ()=default |
| virtual void | MR::IConnectable::connect (Viewer *viewer, int group=0, boost::signals2::connect_position pos=boost::signals2::connect_position::at_back)=0 |
| virtual void | MR::IConnectable::disconnect ()=0 |
| virtual | MR::ConnectionHolder::~ConnectionHolder ()=default |
| virtual void | MR::ConnectionHolder::disconnect () |
| virtual | MR::MultiListener< Connectables >::~MultiListener ()=default |
| virtual void | MR::MultiListener< Connectables >::connect (Viewer *viewer, int group=0, boost::signals2::connect_position pos=boost::signals2::connect_position::at_back) |
| virtual void | MR::MultiListener< Connectables >::disconnect () |
| | MR::MouseDownListener::MR_ADD_CTOR_DELETE_MOVE (MouseDownListener) |
| virtual | MR::MouseDownListener::~MouseDownListener ()=default |
| virtual void | MR::MouseDownListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::MouseDownListener::onMouseDown_ (MouseButton btn, int modifiers)=0 |
| | MR::MouseUpListener::MR_ADD_CTOR_DELETE_MOVE (MouseUpListener) |
| virtual | MR::MouseUpListener::~MouseUpListener ()=default |
| virtual void | MR::MouseUpListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::MouseUpListener::onMouseUp_ (MouseButton btn, int modifiers)=0 |
| | MR::MouseMoveListener::MR_ADD_CTOR_DELETE_MOVE (MouseMoveListener) |
| virtual | MR::MouseMoveListener::~MouseMoveListener ()=default |
| virtual void | MR::MouseMoveListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::MouseMoveListener::onMouseMove_ (int x, int y)=0 |
| | MR::MouseScrollListener::MR_ADD_CTOR_DELETE_MOVE (MouseScrollListener) |
| virtual | MR::MouseScrollListener::~MouseScrollListener ()=default |
| virtual void | MR::MouseScrollListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::MouseScrollListener::onMouseScroll_ (float delta)=0 |
| | MR::MouseClickListener::MR_ADD_CTOR_DELETE_MOVE (MouseClickListener) |
| virtual | MR::MouseClickListener::~MouseClickListener ()=default |
| virtual void | MR::MouseClickListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::MouseClickListener::onMouseClick_ (MouseButton btn, int modifiers)=0 |
| | MR::DragStartListener::MR_ADD_CTOR_DELETE_MOVE (DragStartListener) |
| virtual | MR::DragStartListener::~DragStartListener ()=default |
| virtual void | MR::DragStartListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::DragStartListener::onDragStart_ (MouseButton btn, int modifiers)=0 |
| | MR::DragEndListener::MR_ADD_CTOR_DELETE_MOVE (DragEndListener) |
| virtual | MR::DragEndListener::~DragEndListener ()=default |
| virtual void | MR::DragEndListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::DragEndListener::onDragEnd_ (MouseButton btn, int modifiers)=0 |
| | MR::DragListener::MR_ADD_CTOR_DELETE_MOVE (DragListener) |
| virtual | MR::DragListener::~DragListener ()=default |
| virtual void | MR::DragListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::DragListener::onDrag_ (int x, int y)=0 |
| | MR::CharPressedListener::MR_ADD_CTOR_DELETE_MOVE (CharPressedListener) |
| virtual | MR::CharPressedListener::~CharPressedListener ()=default |
| virtual void | MR::CharPressedListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::CharPressedListener::onCharPressed_ (unsigned charKey, int modifier)=0 |
| | MR::KeyUpListener::MR_ADD_CTOR_DELETE_MOVE (KeyUpListener) |
| virtual | MR::KeyUpListener::~KeyUpListener ()=default |
| virtual void | MR::KeyUpListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::KeyUpListener::onKeyUp_ (int key, int modifier)=0 |
| | MR::KeyDownListener::MR_ADD_CTOR_DELETE_MOVE (KeyDownListener) |
| virtual | MR::KeyDownListener::~KeyDownListener ()=default |
| virtual void | MR::KeyDownListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::KeyDownListener::onKeyDown_ (int key, int modifier)=0 |
| | MR::KeyRepeatListener::MR_ADD_CTOR_DELETE_MOVE (KeyRepeatListener) |
| virtual | MR::KeyRepeatListener::~KeyRepeatListener ()=default |
| virtual void | MR::KeyRepeatListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::KeyRepeatListener::onKeyRepeat_ (int key, int modifier)=0 |
| | MR::PreSetupViewListener::MR_ADD_CTOR_DELETE_MOVE (PreSetupViewListener) |
| virtual | MR::PreSetupViewListener::~PreSetupViewListener ()=default |
| virtual void | MR::PreSetupViewListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::PreSetupViewListener::preSetupView_ ()=0 |
| | MR::PreDrawListener::MR_ADD_CTOR_DELETE_MOVE (PreDrawListener) |
| virtual | MR::PreDrawListener::~PreDrawListener ()=default |
| virtual void | MR::PreDrawListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::PreDrawListener::preDraw_ ()=0 |
| | MR::DrawListener::MR_ADD_CTOR_DELETE_MOVE (DrawListener) |
| virtual | MR::DrawListener::~DrawListener ()=default |
| virtual void | MR::DrawListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::DrawListener::draw_ ()=0 |
| | MR::PostDrawListener::MR_ADD_CTOR_DELETE_MOVE (PostDrawListener) |
| virtual | MR::PostDrawListener::~PostDrawListener ()=default |
| virtual void | MR::PostDrawListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::PostDrawListener::postDraw_ ()=0 |
| | MR::DragDropListener::MR_ADD_CTOR_DELETE_MOVE (DragDropListener) |
| virtual | MR::DragDropListener::~DragDropListener ()=default |
| virtual void | MR::DragDropListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::DragDropListener::dragDrop_ (const std::vector< std::filesystem::path > &paths)=0 |
| | MR::DragEntranceListener::MR_ADD_CTOR_DELETE_MOVE (DragEntranceListener) |
| virtual | MR::DragEntranceListener::~DragEntranceListener ()=default |
| virtual void | MR::DragEntranceListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::DragEntranceListener::dragEntrance_ (bool enter)=0 |
| | MR::DragOverListener::MR_ADD_CTOR_DELETE_MOVE (DragOverListener) |
| virtual | MR::DragOverListener::~DragOverListener ()=default |
| virtual void | MR::DragOverListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::DragOverListener::dragOver_ (int x, int y)=0 |
| | MR::PostResizeListener::MR_ADD_CTOR_DELETE_MOVE (PostResizeListener) |
| virtual | MR::PostResizeListener::~PostResizeListener ()=default |
| virtual void | MR::PostResizeListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::PostResizeListener::postResize_ (int w, int h)=0 |
| | MR::InterruptCloseListener::MR_ADD_CTOR_DELETE_MOVE (InterruptCloseListener) |
| virtual | MR::InterruptCloseListener::~InterruptCloseListener ()=default |
| virtual void | MR::InterruptCloseListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::InterruptCloseListener::interruptClose_ ()=0 |
| | MR::PostRescaleListener::MR_ADD_CTOR_DELETE_MOVE (PostRescaleListener) |
| virtual | MR::PostRescaleListener::~PostRescaleListener ()=default |
| virtual void | MR::PostRescaleListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::PostRescaleListener::postRescale_ (float x, float y)=0 |
| | MR::TouchStartListener::MR_ADD_CTOR_DELETE_MOVE (TouchStartListener) |
| virtual | MR::TouchStartListener::~TouchStartListener ()=default |
| virtual void | MR::TouchStartListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchStartListener::onTouchStart_ (int id, int x, int y)=0 |
| | MR::TouchMoveListener::MR_ADD_CTOR_DELETE_MOVE (TouchMoveListener) |
| virtual | MR::TouchMoveListener::~TouchMoveListener ()=default |
| virtual void | MR::TouchMoveListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchMoveListener::onTouchMove_ (int id, int x, int y)=0 |
| | MR::TouchEndListener::MR_ADD_CTOR_DELETE_MOVE (TouchEndListener) |
| virtual | MR::TouchEndListener::~TouchEndListener ()=default |
| virtual void | MR::TouchEndListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchEndListener::onTouchEnd_ (int id, int x, int y)=0 |
| | MR::SpaceMouseMoveListener::MR_ADD_CTOR_DELETE_MOVE (SpaceMouseMoveListener) |
| virtual | MR::SpaceMouseMoveListener::~SpaceMouseMoveListener ()=default |
| virtual void | MR::SpaceMouseMoveListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::SpaceMouseMoveListener::spaceMouseMove_ (const Vector3f &translate, const Vector3f &rotate)=0 |
| | MR::SpaceMouseDownListener::MR_ADD_CTOR_DELETE_MOVE (SpaceMouseDownListener) |
| virtual | MR::SpaceMouseDownListener::~SpaceMouseDownListener ()=default |
| virtual void | MR::SpaceMouseDownListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::SpaceMouseDownListener::spaceMouseDown_ (int key)=0 |
| | MR::SpaceMouseUpListener::MR_ADD_CTOR_DELETE_MOVE (SpaceMouseUpListener) |
| virtual | MR::SpaceMouseUpListener::~SpaceMouseUpListener ()=default |
| virtual void | MR::SpaceMouseUpListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::SpaceMouseUpListener::spaceMouseUp_ (int key)=0 |
| | MR::TouchpadRotateGestureBeginListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadRotateGestureBeginListener) |
| virtual | MR::TouchpadRotateGestureBeginListener::~TouchpadRotateGestureBeginListener ()=default |
| virtual void | MR::TouchpadRotateGestureBeginListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadRotateGestureBeginListener::touchpadRotateGestureBegin_ ()=0 |
| | MR::TouchpadRotateGestureUpdateListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadRotateGestureUpdateListener) |
| virtual | MR::TouchpadRotateGestureUpdateListener::~TouchpadRotateGestureUpdateListener ()=default |
| virtual void | MR::TouchpadRotateGestureUpdateListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadRotateGestureUpdateListener::touchpadRotateGestureUpdate_ (float angle)=0 |
| | MR::TouchpadRotateGestureEndListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadRotateGestureEndListener) |
| virtual | MR::TouchpadRotateGestureEndListener::~TouchpadRotateGestureEndListener ()=default |
| virtual void | MR::TouchpadRotateGestureEndListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadRotateGestureEndListener::touchpadRotateGestureEnd_ ()=0 |
| | MR::TouchpadSwipeGestureBeginListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadSwipeGestureBeginListener) |
| virtual | MR::TouchpadSwipeGestureBeginListener::~TouchpadSwipeGestureBeginListener ()=default |
| virtual void | MR::TouchpadSwipeGestureBeginListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadSwipeGestureBeginListener::touchpadSwipeGestureBegin_ ()=0 |
| | MR::TouchpadSwipeGestureUpdateListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadSwipeGestureUpdateListener) |
| virtual | MR::TouchpadSwipeGestureUpdateListener::~TouchpadSwipeGestureUpdateListener ()=default |
| virtual void | MR::TouchpadSwipeGestureUpdateListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadSwipeGestureUpdateListener::touchpadSwipeGestureUpdate_ (float dx, float dy, bool kinetic)=0 |
| | MR::TouchpadSwipeGestureEndListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadSwipeGestureEndListener) |
| virtual | MR::TouchpadSwipeGestureEndListener::~TouchpadSwipeGestureEndListener ()=default |
| virtual void | MR::TouchpadSwipeGestureEndListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadSwipeGestureEndListener::touchpadSwipeGestureEnd_ ()=0 |
| | MR::TouchpadZoomGestureBeginListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadZoomGestureBeginListener) |
| virtual | MR::TouchpadZoomGestureBeginListener::~TouchpadZoomGestureBeginListener ()=default |
| virtual void | MR::TouchpadZoomGestureBeginListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadZoomGestureBeginListener::touchpadZoomGestureBegin_ ()=0 |
| | MR::TouchpadZoomGestureUpdateListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadZoomGestureUpdateListener) |
| virtual | MR::TouchpadZoomGestureUpdateListener::~TouchpadZoomGestureUpdateListener ()=default |
| virtual void | MR::TouchpadZoomGestureUpdateListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadZoomGestureUpdateListener::touchpadZoomGestureUpdate_ (float scale, bool kinetic)=0 |
| | MR::TouchpadZoomGestureEndListener::MR_ADD_CTOR_DELETE_MOVE (TouchpadZoomGestureEndListener) |
| virtual | MR::TouchpadZoomGestureEndListener::~TouchpadZoomGestureEndListener ()=default |
| virtual void | MR::TouchpadZoomGestureEndListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual bool | MR::TouchpadZoomGestureEndListener::touchpadZoomGestureEnd_ ()=0 |
| | MR::PostFocusListener::MR_ADD_CTOR_DELETE_MOVE (PostFocusListener) |
| virtual | MR::PostFocusListener::~PostFocusListener ()=default |
| virtual void | MR::PostFocusListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::PostFocusListener::postFocus_ (bool focused)=0 |
| | MR::CursorEntranceListener::MR_ADD_CTOR_DELETE_MOVE (CursorEntranceListener) |
| virtual | MR::CursorEntranceListener::~CursorEntranceListener ()=default |
| virtual void | MR::CursorEntranceListener::connect (Viewer *viewer, int group, boost::signals2::connect_position pos) override |
| virtual void | MR::CursorEntranceListener::cursorEntrance_ (bool enter)=0 |
| Viewer & | MR::getViewerInstance () |
| | returns global instance of Viewer class
|
| void | MR::incrementForceRedrawFrames (int i=1, bool swapOnLastOnly=false) |
| virtual | MR::ViewerPlugin::~ViewerPlugin () |
| virtual void | MR::ViewerPlugin::init (Viewer *_viewer) |
| | This function is called when the viewer is initialized (no mesh will be loaded at this stage)
|
| virtual void | MR::ViewerPlugin::shutdown () |
| | This function is called before shutdown.
|
| virtual | MR::IViewerSettingsManager::~IViewerSettingsManager ()=default |
| virtual int | MR::IViewerSettingsManager::loadInt (const std::string &name, int def=0)=0 |
| virtual void | MR::IViewerSettingsManager::saveInt (const std::string &name, int value)=0 |
| virtual std::string | MR::IViewerSettingsManager::loadString (const std::string &name, const std::string &def="")=0 |
| virtual void | MR::IViewerSettingsManager::saveString (const std::string &name, const std::string &value)=0 |
| virtual bool | MR::IViewerSettingsManager::loadBool (const std::string &name, bool def=false)=0 |
| virtual void | MR::IViewerSettingsManager::saveBool (const std::string &name, bool value)=0 |
| virtual void | MR::IViewerSettingsManager::resetSettings (Viewer &)=0 |
| virtual void | MR::IViewerSettingsManager::loadSettings (Viewer &)=0 |
| virtual void | MR::IViewerSettingsManager::saveSettings (const Viewer &)=0 |
| | MR::ViewerSettingsManager::ViewerSettingsManager () |
| virtual int | MR::ViewerSettingsManager::loadInt (const std::string &name, int def) override |
| virtual void | MR::ViewerSettingsManager::saveInt (const std::string &name, int value) override |
| virtual std::string | MR::ViewerSettingsManager::loadString (const std::string &name, const std::string &def) override |
| virtual void | MR::ViewerSettingsManager::saveString (const std::string &name, const std::string &value) override |
| virtual bool | MR::ViewerSettingsManager::loadBool (const std::string &name, bool def) override |
| virtual void | MR::ViewerSettingsManager::saveBool (const std::string &name, bool value) override |
| virtual void | MR::ViewerSettingsManager::resetSettings (Viewer &) override |
| virtual void | MR::ViewerSettingsManager::loadSettings (Viewer &viewer) override |
| virtual void | MR::ViewerSettingsManager::saveSettings (const Viewer &viewer) override |
| const std::string & | MR::ViewerSettingsManager::getLastExtention (ObjType objType) |
| void | MR::ViewerSettingsManager::setLastExtention (ObjType objType, std::string ext) |
| | MR::ViewerSettingsPlugin::ViewerSettingsPlugin () |
| virtual void | MR::ViewerSettingsPlugin::drawDialog (ImGuiContext *ctx) override |
| virtual bool | MR::ViewerSettingsPlugin::blocking () const override |
| | true if this item is blocking (only one blocking item can be active at once)
|
| void | MR::ViewerSettingsPlugin::updateThemes () |
| | call this function if you save/delete color theme, or change current theme outside of this plugin
|
| virtual | MR::ViewerSettingsPlugin::ExternalSettings::~ExternalSettings () |
| virtual const std::string & | MR::ViewerSettingsPlugin::ExternalSettings::getName () const =0 |
| | returns the name of the setting, which is a unique value
|
| virtual void | MR::ViewerSettingsPlugin::ExternalSettings::draw ()=0 |
| | the function of drawing the configuration UI
|
| virtual void | MR::ViewerSettingsPlugin::ExternalSettings::reset () |
| | restore the settings to their default values
|
| virtual const char * | MR::ViewerSettingsPlugin::ExternalSettings::separatorName () const |
| | if not overriden this setting will be drawn in tools block
|
| void | MR::ViewerSettingsPlugin::addComboSettings (const TabType tab, std::shared_ptr< ExternalSettings > settings) |
| | add external settings with UI combo box
|
| void | MR::ViewerSettingsPlugin::delComboSettings (const TabType tab, const ExternalSettings *settings) |
| | delete external settings with UI combo box
|
| static ViewerSettingsPlugin * | MR::ViewerSettingsPlugin::instance () |
| void | MR::ViewerSettingsPlugin::setActiveTab (TabType tab) |
| | changes active tab
|
| | MR::ViewerTitle::ViewerTitle ()=default |
| virtual | MR::ViewerTitle::~ViewerTitle ()=default |
| void | MR::ViewerTitle::setAppName (std::string appName) |
| | Name of the application.
|
| void | MR::ViewerTitle::setVersion (std::string version) |
| | Version of application.
|
| void | MR::ViewerTitle::setSceneName (std::string sceneName) |
| | Name of current scene.
|
| virtual std::string | MR::ViewerTitle::compose () const |
| | this function is called from update_ compose resulting name
|
| void | MR::ViewerTitle::update_ () |
| | called when something changes, composes new title and apply it to window
|
| ImVec2 | MR::position (const ViewportRectangle &rect) |
| ImVec2 | MR::size (const ViewportRectangle &rect) |
| template<typename T> |
| Vector4< T > | MR::toVec4 (const ViewportRectangle &rect) |
| static Viewport & | MR::Viewport::get (ViewportId viewportId={}) |
| | MR::Viewport::Viewport () |
| | MR::Viewport::~Viewport () |
| Viewport | MR::Viewport::clone () const |
| | MR::Viewport::Viewport (Viewport &&) noexcept=default |
| Viewport & | MR::Viewport::operator= (Viewport &&) noexcept=default |
| void | MR::Viewport::init () |
| | Initialization.
|
| void | MR::Viewport::setAxesPos (const int pixelXoffset=-100, const int pixelYoffset=-100) |
| void | MR::Viewport::setAxesSize (const int axisPixSize=80) |
| const Vector2f & | MR::Viewport::getAxesPosition () const |
| | returns position of basis axes in viewport space
|
| float | MR::Viewport::getAxesSize () const |
| const Matrix4f & | MR::Viewport::getAxesProjectionMatrix () const |
| | returns projection matrix that is used for basis axes and view controller rendering
|
| void | MR::Viewport::shut () |
| | Shutdown.
|
| void | MR::Viewport::clearFramebuffers () |
| | ----------------— Drawing functions
|
| void | MR::Viewport::recursiveDraw (const Object &obj, DepthFunction depthFunc=DepthFunction::Default, const AffineXf3f &rootXf={}, RenderModelPassMask renderType=RenderModelPassMask::All, const TransparencyMode &transparentMode={}, int *numDraws=nullptr) const |
| | Immediate draw of given object tree.
|
| bool | MR::Viewport::draw (const VisualObject &obj, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| bool | MR::Viewport::draw (const VisualObject &obj, const AffineXf3f &xf, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| bool | MR::Viewport::draw (const VisualObject &obj, const AffineXf3f &xf, const Matrix4f &projM, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| bool | MR::Viewport::drawOrthoFixedPos (const VisualObject &obj, const AffineXf3f &xf, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| void | MR::Viewport::drawLines (const std::vector< LineSegm3f > &lines, const std::vector< SegmEndColors > &colors, const LinePointImmediateRenderParams ¶ms) |
| | Draw lines immediately.
|
| void | MR::Viewport::drawLines (const std::vector< LineSegm3f > &lines, const std::vector< SegmEndColors > &colors, float width=1, bool depthTest=true) |
| void | MR::Viewport::drawPoints (const std::vector< Vector3f > &points, const std::vector< Vector4f > &colors, const LinePointImmediateRenderParams ¶ms) |
| | Draw points immediately.
|
| void | MR::Viewport::drawPoints (const std::vector< Vector3f > &points, const std::vector< Vector4f > &colors, float width=1, bool depthTest=true) |
| void | MR::Viewport::drawTris (const std::vector< Triangle3f > &tris, const std::vector< TriCornerColors > &colors, const ModelRenderParams ¶ms, bool depthTest=true) |
| | Draw triangles immediately (flat shaded)
|
| void | MR::Viewport::drawTris (const std::vector< Triangle3f > &tris, const std::vector< TriCornerColors > &colors, const Matrix4f &modelM={}, bool depthTest=true) |
| BaseRenderParams | MR::Viewport::getBaseRenderParams () const |
| | Prepares base rendering parameters for this viewport.
|
| BaseRenderParams | MR::Viewport::getBaseRenderParams (const Matrix4f &projM) const |
| | Prepares base rendering parameters for this viewport with custom projection matrix.
|
| BaseRenderParams | MR::Viewport::getBaseRenderParamsOrthoFixedPos () const |
| | Prepares base rendering parameters for this viewport with orthographic proj matrix and rotation component of view matrix.
|
| ModelRenderParams | MR::Viewport::getModelRenderParams (const Matrix4f &modelM, Matrix4f *normM, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| | Prepares rendering parameters to draw a model with given transformation in this viewport.
|
| ModelRenderParams | MR::Viewport::getModelRenderParamsOrthoFixedPos (const Matrix4f &modelM, Matrix4f *normM, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| | Prepares rendering parameters to draw a model with orthographic proj matrix and rotation component of view matrix.
|
| ModelRenderParams | MR::Viewport::getModelRenderParams (const Matrix4f &modelM, const BaseRenderParams &baseParams, Matrix4f *normM, DepthFunction depthFunc=DepthFunction::Default, RenderModelPassMask pass=RenderModelPassMask::All, const TransparencyMode &transparentMode={}) const |
| | Prepares rendering parameters to draw a model with given transformation in this viewport with custom BaseRenderParams.
|
| static PickRenderObjectParams | MR::Viewport::PickRenderObjectParams::defaults () |
| ObjAndPick | MR::Viewport::pickRenderObject (const PickRenderObjectParams ¶ms=PickRenderObjectParams::defaults()) const |
| ObjAndPick | MR::Viewport::pickRenderObject (std::span< VisualObject *const > objects, const PickRenderObjectParams ¶ms=PickRenderObjectParams::defaults()) const |
| | This overload uses objects from the list (possibly filtered by a predicate).
|
| ConstObjAndPick | MR::Viewport::pickRenderObjectConst (std::span< const VisualObject *const > objects, const PickRenderObjectParams ¶ms=PickRenderObjectParams::defaults()) const |
| | This overload uses const objects from the list (possibly filtered by a predicate). Sadly need a different name to avoid over resolution issues.
|
| ObjAndPick | MR::Viewport::pick_render_object () const |
| ObjAndPick | MR::Viewport::pick_render_object (uint16_t pickRadius) const |
| ObjAndPick | MR::Viewport::pick_render_object (const std::vector< VisualObject * > &objects) const |
| | NOTE! If your list is hardcoded, use .objects = std::array{ a, b, c }.
|
| ObjAndPick | MR::Viewport::pick_render_object (const std::vector< VisualObject * > &objects, uint16_t pickRadius, bool exactPickFirst=true) const |
| ObjAndPick | MR::Viewport::pick_render_object (bool exactPickFirst) const |
| | This function allows to pick point in scene by GL with default pick radius, but with specified exactPickFirst parameter (see description upper).
|
| ObjAndPick | MR::Viewport::pick_render_object (const Vector2f &viewportPoint) const |
| ObjAndPick | MR::Viewport::pick_render_object (const std::vector< VisualObject * > &objects, const Vector2f &viewportPoint) const |
| std::vector< ObjAndPick > | MR::Viewport::multiPickObjects (std::span< VisualObject *const > objects, const std::vector< Vector2f > &viewportPoints, const BaseRenderParams *overrideRenderParams=nullptr) const |
| std::vector< std::shared_ptr< VisualObject > > | MR::Viewport::findObjectsInRect (const Box2i &rect, int maxRenderResolutionSide=512) const |
| std::unordered_map< std::shared_ptr< ObjectMesh >, FaceBitSet > | MR::Viewport::findVisibleFaces (const BitSet &includePixBs, int maxRenderResolutionSide=512) const |
| FaceBitSet | MR::Viewport::findCameraLookingFaces (const Mesh &mesh, const AffineXf3f &meshToWorld) const |
| | finds all triangles of a mesh that having normals oriented toward the camera in this viewport
|
| ConstObjAndPick | MR::Viewport::const_pick_render_object () const |
| ConstObjAndPick | MR::Viewport::const_pick_render_object (const std::vector< const VisualObject * > &objects) const |
| std::vector< ConstObjAndPick > | MR::Viewport::constMultiPickObjects (const std::vector< const VisualObject * > &objects, const std::vector< Vector2f > &viewportPoints) const |
| void | MR::Viewport::transformView (const AffineXf3f &xf) |
| bool | MR::Viewport::getRedrawFlag () const |
| void | MR::Viewport::resetRedrawFlag () |
| bool | MR::Viewport::Parameters::operator== (const Viewport::Parameters &other) const =default |
| void | MR::Viewport::setRotation (bool state) |
| | Starts or stop rotation.
|
| const ViewportRectangle & | MR::Viewport::getViewportRect () const |
| | Note, Y is up for this box.
|
| float | MR::Viewport::getPixelSize () const |
| | Finds length between near pixels on zNear plane. Only good in the orthographic projection.
|
| float | MR::Viewport::getPixelSizeAtPoint (const Vector3f &worldPoint) const |
| void | MR::Viewport::setViewportRect (const ViewportRectangle &rect) |
| AffineXf3f | MR::Viewport::getUnscaledViewXf () const |
| | returns orthonormal matrix with translation
|
| AffineXf3f | MR::Viewport::getViewXf () const |
| | converts directly from the view matrix
|
| Vector3f | MR::Viewport::getUpDirection () const |
| | returns unit vector in world space corresponding to up-direction in camera space
|
| Vector3f | MR::Viewport::getRightDirection () const |
| | assume that viewM is orthogonal and inverse=transpose
|
| Vector3f | MR::Viewport::getBackwardDirection () const |
| | assume that viewM is orthogonal and inverse=transpose
|
| Line3f | MR::Viewport::unprojectPixelRay (const Vector2f &viewportPoint) const |
| | assume that viewM is orthogonal and inverse=transpose
|
| Vector3f | MR::Viewport::worldToCameraSpace (const Vector3f &p) const |
| | convert point(s) to camera space by applying view matrix
|
| std::vector< Vector3f > | MR::Viewport::worldToCameraSpace (const std::vector< Vector3f > &p) const |
| Vector3f | MR::Viewport::projectToClipSpace (const Vector3f &worldPoint) const |
| std::vector< Vector3f > | MR::Viewport::projectToClipSpace (const std::vector< Vector3f > &worldPoints) const |
| Vector3f | MR::Viewport::unprojectFromClipSpace (const Vector3f &clipPoint) const |
| std::vector< Vector3f > | MR::Viewport::unprojectFromClipSpace (const std::vector< Vector3f > &clipPoints) const |
| Vector3f | MR::Viewport::projectToViewportSpace (const Vector3f &worldPoint) const |
| std::vector< Vector3f > | MR::Viewport::projectToViewportSpace (const std::vector< Vector3f > &worldPoints) const |
| Vector3f | MR::Viewport::unprojectFromViewportSpace (const Vector3f &viewportPoint) const |
| std::vector< Vector3f > | MR::Viewport::unprojectFromViewportSpace (const std::vector< Vector3f > &viewportPoints) const |
| Vector3f | MR::Viewport::clipSpaceToViewportSpace (const Vector3f &p) const |
| std::vector< Vector3f > | MR::Viewport::clipSpaceToViewportSpace (const std::vector< Vector3f > &p) const |
| Vector3f | MR::Viewport::viewportSpaceToClipSpace (const Vector3f &p) const |
| std::vector< Vector3f > | MR::Viewport::viewportSpaceToClipSpace (const std::vector< Vector3f > &p) const |
| void | MR::Viewport::setupView () |
| | updates view and projection matrices due to camera parameters (called each frame)
|
| void | MR::Viewport::preDraw () |
| void | MR::Viewport::postDraw () const |
| void | MR::Viewport::fitData (float fill=1.0f, bool snapView=true) |
| void | MR::Viewport::fitBox (const Box3f &newSceneBox, float fill=1.0f, bool snapView=true) |
| void | MR::Viewport::preciseFitBoxToScreenBorder (const FitBoxParams ¶ms) |
| | fit view and proj matrices to match the screen size with given box
|
| void | MR::Viewport::preciseFitDataToScreenBorder (const FitDataParams ¶ms={}) |
| | fit view and proj matrices to match the screen size with given objects
|
| float | MR::Viewport::getRatio () const |
| | returns viewport width/height ratio
|
| bool | MR::Viewport::allModelsInsideViewportRectangle () const |
| | returns true if all models are fully projected inside the viewport rectangle
|
| const Box3f & | MR::Viewport::getSceneBox () const |
| const Parameters & | MR::Viewport::getParameters () const |
| Vector3f | MR::Viewport::getCameraPoint () const |
| | returns camera world location for the current view
|
| void | MR::Viewport::setCameraPoint (const Vector3f &cameraWorldPos) |
| | sets camera world location for the current view
|
| void | MR::Viewport::setCameraTrackballAngle (const Quaternionf &rot) |
| void | MR::Viewport::setCameraTranslation (const Vector3f &translation) |
| void | MR::Viewport::setCameraViewAngle (float newViewAngle) |
| void | MR::Viewport::setCameraZoom (float zoom) |
| void | MR::Viewport::setOrthographic (bool orthographic) |
| void | MR::Viewport::setBackgroundColor (const Color &color) |
| void | MR::Viewport::setClippingPlane (const Plane3f &plane) |
| void | MR::Viewport::setLabel (std::string s) |
| void | MR::Viewport::setSelectable (bool on) |
| void | MR::Viewport::showAxes (bool on) |
| void | MR::Viewport::showClippingPlane (bool on) |
| void | MR::Viewport::showRotationCenter (bool on) |
| void | MR::Viewport::showGlobalBasis (bool on) |
| void | MR::Viewport::rotationCenterMode (Parameters::RotationCenterMode mode) |
| void | MR::Viewport::setParameters (const Viewport::Parameters ¶ms) |
| void | MR::Viewport::cameraLookAlong (const Vector3f &dir, const Vector3f &up) |
| void | MR::Viewport::cameraRotateAround (const Line3f &axis, float angle) |
| Vector3f | MR::Viewport::getRotationPivot () const |
| | returns current rotation pivot in world space, which should appear static on a screen during rotation by the user
|
| void | MR::Viewport::resetStaticRotationPivot (const std::optional< Vector3f > &pivot=std::nullopt) |
| bool | MR::CornerControllerObject::PickedIds::operator== (const PickedIds &other) const =default |
| | MR::CornerControllerObject::CornerControllerObject ()=default |
| void | MR::CornerControllerObject::initDefault () |
| | initialize this object with default settings
|
| void | MR::CornerControllerObject::enable (ViewportMask mask) |
| | enables or disables this object by provided mask
|
| void | MR::CornerControllerObject::draw (const Viewport &vp, const AffineXf3f &rotXf, const AffineXf3f &vpInvXf) |
| | draw this object in given viewport in position of basis axes
|
| bool | MR::CornerControllerObject::getRedrawFlag (ViewportMask mask) const |
| | returns true if objects requires redraw
|
| void | MR::CornerControllerObject::resetRedrawFlag () |
| | marks this object as drawn
|
| Mesh | MR::makeCornerControllerMesh (float size, float cornerRatio=0.2f) |
| | Makes cube mesh with specified face structure for each 3-rank corner, each 2-rank corner and each side:
.
|
| Mesh | MR::makeCornerControllerRotationArrowMesh (float size, const Vector2f &shift, bool ccw) |
| | Makes planar arrow mesh that will be used for controlling in plane rotation in corner near cube controller.
|
| VertUVCoords | MR::makeCornerControllerUVCoords (float cornerRatio=0.2f) |
| | Creates UV coordinates for makeCornerControllerMesh output mesh for texture like:
"Right"" Left "
" Top ""Bottom"
"Front"" Back ".
|
| Vector< MeshTexture, TextureId > | MR::loadCornerControllerTextures () |
| | Loads 3 textures for corner controller: default, side hovered, corner hovered.
|
| const TexturePerFace & | MR::getCornerControllerTexureMap () |
| RegionId | MR::getCornerControllerRegionByFace (FaceId face) |
| | returns region id of corner controller by its face
|
| TexturePerFace | MR::getCornerControllerHoveredTextureMap (RegionId rId) |
| | returns textures map with region faces hovered
|
| void | MR::updateCurrentViewByControllerRegion (CornerControllerObject::PickedIds pickedId) |
| | setup camera for selected viewport by corner controller region
|
| bool | MR::operator== (const SegmEndColors &a, const SegmEndColors &b) |
| bool | MR::operator== (const ViewportPointsWithColors &a, const ViewportPointsWithColors &b) |
| | MR::ViewportGL::ViewportGL ()=default |
| | MR::ViewportGL::ViewportGL (const ViewportGL &) |
| | Copy operators do nothing, not to share GL data.
|
| ViewportGL & | MR::ViewportGL::operator= (const ViewportGL &) |
| | MR::ViewportGL::ViewportGL (ViewportGL &&other) noexcept |
| ViewportGL & | MR::ViewportGL::operator= (ViewportGL &&) noexcept |
| | MR::ViewportGL::~ViewportGL () |
| void | MR::ViewportGL::init () |
| | Initialize all GL buffers and arrays.
|
| void | MR::ViewportGL::free () |
| | Free all GL data.
|
| void | MR::ViewportGL::drawBorder (const Box2f &rect, const Color &color) const |
| | Binds and draws viewport border.
|
| void | MR::ViewportGL::fillViewport (const Box2f &rect, const Color &color) const |
| | Fills viewport with given color (clear frame buffer)
|
| bool | MR::ViewportGL::checkInit () const |
| | Check that members have been initialized.
|
| PickResults | MR::ViewportGL::pickObjects (const PickParameters ¶ms, const std::vector< Vector2i > &picks) const |
| | Find picked object, face id and z coordinate, of objects given in parameters (works for vector of picks)
|
| std::vector< unsigned > | MR::ViewportGL::findUniqueObjectsInRect (const PickParameters ¶ms, const Box2i &rect, int maxRenderResolutionSide) const |
| ScaledPickRes | MR::ViewportGL::pickObjectsInRect (const PickParameters ¶ms, const Box2i &rect, int maxRenderResolutionSide) const |
| void | MR::ViewportGL::PickTextureFrameBuffer::resize (const Vector2i &size) |
| void | MR::ViewportGL::PickTextureFrameBuffer::del () |
| void | MR::ViewportGL::PickTextureFrameBuffer::bind (bool read) |
| | MR::ViewportGlobalBasis::ViewportGlobalBasis () |
| | Constructs default global basis object.
|
| float | MR::ViewportGlobalBasis::getAxesLength (ViewportId id={}) const |
| | Returns length of axis (all are the same)
|
| float | MR::ViewportGlobalBasis::getAxesWidth (ViewportId id={}) const |
| | Returns width of axis (all are the same)
|
| void | MR::ViewportGlobalBasis::setAxesProps (float length, float width, ViewportId id={}) |
| | Sets length and width for all axes.
|
| void | MR::ViewportGlobalBasis::setColors (const Color &xColor, const Color &yColor, const Color &zColor, const Color &labelColors) |
| | Sets colors for each axis of this object.
|
| const std::vector< std::shared_ptr< VisualObject > > & | MR::ViewportGlobalBasis::axesChildren () const |
| | Simple accessor to visual children (useful for pickers or box calculations)
|
| bool | MR::ViewportGlobalBasis::getRedrawFlag (ViewportMask vpMask) const |
| | returns true if any of its children requires redraw
|
| void | MR::ViewportGlobalBasis::resetRedrawFlag () const |
| | reset redraw flag for all children
|
| void | MR::ViewportGlobalBasis::draw (const Viewport &vp) const |
| | Draw this object into given viewport.
|
| void | MR::ViewportGlobalBasis::setVisible (bool on, ViewportMask vpMask=ViewportMask::all()) |
| | Set visibility for all child objects.
|
| void | MR::ViewportGlobalBasis::setVisibilityMask (ViewportMask vpMask) |
| bool | MR::ViewportGlobalBasis::isVisible (ViewportMask vpMask=ViewportMask::any()) const |
| | returns true if object is present and visible
|
| ViewportMask | MR::ViewportGlobalBasis::getVisibilityMask () const |
| void | MR::ViewportGlobalBasis::setGridVisible (bool on, ViewportMask vpMask=ViewportMask::all()) |
| | Set visibility for grid objects.
|
| void | MR::ViewportGlobalBasis::setGridVisibilityMask (ViewportMask vpMask) |
| bool | MR::ViewportGlobalBasis::isGridVisible (ViewportMask vpMask=ViewportMask::any()) const |
| | returns true if grid is present and visible
|
| ViewportMask | MR::ViewportGlobalBasis::getGridVisibilityMask () const |
| void | MR::ViewportGlobalBasis::resetConnections () |
| | clears connections of this structure (by default it changes colors on theme change and change font size on rescale)
|
| static VisualObjectTagManager & | MR::VisualObjectTagManager::instance () |
| | get access to the global instance
|
| static const std::map< std::string, VisualObjectTag > & | MR::VisualObjectTagManager::tags () |
| | get read-only access to the visual object tags' storage
|
| static void | MR::VisualObjectTagManager::registerTag (std::string tag, VisualObjectTag visTag) |
| | add visual object tag
|
| static void | MR::VisualObjectTagManager::updateTag (const std::string &tag, VisualObjectTag visTag) |
| | update visual object tag; linked objects are NOT updated automatically
|
| static void | MR::VisualObjectTagManager::unregisterTag (const std::string &tag) |
| | remove visual object tag; linked objects are NOT updated automatically
|
| static std::vector< std::shared_ptr< Object > > | MR::VisualObjectTagManager::getAllObjectsWithTag (Object *root, const std::string &tag, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable) |
| | find all object in given object tree with the visual object tag
|
| static void | MR::VisualObjectTagManager::update (VisualObject &visObj, const std::string &tag) |
| | update visual object properties according to whether given object has the visual object tag or not
|
| void | MR::deserializeFromJson (const Json::Value &root, VisualObjectTagManager &manager) |
| void | MR::serializeToJson (const VisualObjectTagManager &manager, Json::Value &root) |
| std::string | MR::getTrivialVertexShader () |
| | simple quad vertex shader
|
| std::string | MR::getVolumeFragmentShader () |
| | shader with raytracing over volume
|
| std::string | MR::getVolumePickerFragmentShader () |
| | shader with raytracing over volume
|
| Expected< Json::Value > | MR::parseResponse (const Json::Value &response) |
| | returns json value of text or error if response failed
|
| | MR::WebRequest::WebRequest ()=default |
| | MR::WebRequest::WebRequest (std::string url) |
| void | MR::WebRequest::clear () |
| | clear all request data
|
| void | MR::WebRequest::setMethod (Method method) |
| | set HTTP method
|
| void | MR::WebRequest::setTimeout (int timeoutMs) |
| | set timeout in milliseconds
|
| void | MR::WebRequest::setParameters (std::unordered_map< std::string, std::string > parameters) |
| | set URL query parameters
|
| void | MR::WebRequest::setHeaders (std::unordered_map< std::string, std::string > headers) |
| | set HTTP headers
|
| void | MR::WebRequest::setInputPath (std::filesystem::path inputPath) |
| | set path to the file to upload
|
| void | MR::WebRequest::setUploadProgressCallback (ProgressCallback callback) |
| void | MR::WebRequest::setFormData (std::vector< FormData > formData) |
| void | MR::WebRequest::setBody (std::string body) |
| | set payload in plain format
|
| void | MR::WebRequest::setOutputPath (std::filesystem::path outputPath) |
| | prefer to save the response to file
|
| void | MR::WebRequest::setDownloadProgressCallback (ProgressCallback callback) |
| | set progress callback for download
|
| void | MR::WebRequest::setAsync (bool async) |
| | set async mode (return immediately after sending request)
|
| void | MR::WebRequest::setLogName (std::string logName) |
| | set log name
|
| void | MR::WebRequest::send (std::string url, std::string logName, ResponseCallback callback, bool async=true) |
| void | MR::WebRequest::send (ResponseCallback callback) |
| static void | MR::WebRequest::waitRemainingAsync () |
| | if any async request is still in progress, wait for it
|
| FloatGrid | MR::MeshVoxelsConverter::operator() (const MeshPart &mp, const AffineXf3f &xf={}) const |
| FloatGrid | MR::MeshVoxelsConverter::operator() (const ObjectMesh &obj) const |
| Mesh | MR::MeshVoxelsConverter::operator() (const FloatGrid &grid) const |
| | [0, 1] ratio of combining small triangles into bigger ones
|
| OriginAndDimensions | MR::calcOriginAndDimensions (const Box3f &box, float voxelSize) |
| | computes origin and dimensions of voxel-grid to cover given 3D box with given spacing (voxelSize)
|
| float | MR::voxelizeAndComputeVolume (const std::vector< std::shared_ptr< Mesh > > &meshes, const AffineXf3f &xf, const Vector3f &voxelSize) |
| | MR::VoxelsLoad::DicomStatus::DicomStatus (DicomStatusEnum st, std::string_view rs="") |
| | implicit by design
|
| | MR::VoxelsLoad::DicomStatus::operator bool () const |
| bool | MR::VoxelsLoad::DicomStatus::operator== (DicomStatusEnum s) const |
| DicomStatus | MR::VoxelsLoad::isDicomFile (const std::filesystem::path &path, std::string *seriesUid=nullptr, Vector3i *dims=nullptr) |
| bool | MR::VoxelsLoad::isDicomFolder (const std::filesystem::path &dirPath) |
| | check if given folder contains at least one DICOM file
|
| std::vector< std::filesystem::path > | MR::VoxelsLoad::findDicomFoldersRecursively (const std::filesystem::path &path) |
| | returns all the dicom folders in path, searching recursively
|
| Expected< DicomVolume > | MR::VoxelsLoad::loadDicomFile (const std::filesystem::path &file, const ProgressCallback &cb={}) |
| | Loads full volume from single DICOM file (not a slice file) as SimpleVolumeMinMax.
|
| Expected< DicomVolumeAsVdb > | MR::VoxelsLoad::loadDicomFileAsVdb (const std::filesystem::path &file, const ProgressCallback &cb={}) |
| | Loads full volume from single DICOM file (not a slice file) as VdbVolume.
|
| Expected< DicomVolume > | MR::VoxelsLoad::loadDicomFolder (const std::filesystem::path &path, unsigned maxNumThreads, const ProgressCallback &cb={}) |
| | Loads one volume from DICOM files located in given folder as SimpleVolumeMinMax.
|
| Expected< DicomVolumeAsVdb > | MR::VoxelsLoad::loadDicomFolderAsVdb (const std::filesystem::path &path, unsigned maxNumThreads, const ProgressCallback &cb={}) |
| | Loads one volume from DICOM files located in given folder as VdbVolume.
|
| std::vector< Expected< DicomVolume > > | MR::VoxelsLoad::loadDicomsFolder (const std::filesystem::path &path, unsigned maxNumThreads, const ProgressCallback &cb={}) |
| | Loads all volumes from DICOM files located in given folder as a number of SimpleVolumeMinMax.
|
| std::vector< Expected< DicomVolumeAsVdb > > | MR::VoxelsLoad::loadDicomsFolderAsVdb (const std::filesystem::path &path, unsigned maxNumThreads, const ProgressCallback &cb={}) |
| | Loads all volumes from DICOM files located in given folder as a number of VdbVolume.
|
| std::vector< Expected< DicomVolumeAsVdb > > | MR::VoxelsLoad::loadDicomsFolderTreeAsVdb (const std::filesystem::path &path, unsigned maxNumThreads=4, const ProgressCallback &cb={}) |
| | Loads every subfolder with DICOM volume as new object.
|
| Expected< std::shared_ptr< ObjectVoxels > > | MR::VoxelsLoad::createObjectVoxels (const DicomVolumeAsVdb &dcm, const ProgressCallback &cb={}) |
| | converts DicomVolumeAsVdb in ObjectVoxels
|
| Expected< LoadedObjects > | MR::VoxelsLoad::makeObjectVoxelsFromDicomFolder (const std::filesystem::path &folder, const ProgressCallback &callback={}) |
| | Loads 3D volumetric data from dicom-files in given folder, and converts them into an ObjectVoxels.
|
| Expected< void > | MR::VoxelsSave::toDicom (const VdbVolume &vdbVolume, const std::filesystem::path &path, ProgressCallback cb={}) |
| | Save voxels object to a single 3d DICOM file.
|
| template<typename T> |
| Expected< void > | MR::VoxelsSave::toDicom (const VoxelsVolume< Vector< T, VoxelId > > &volume, const std::filesystem::path &path, const std::optional< MinMaxf > &sourceScale={}, const ProgressCallback &cb={}) |
| template Expected< void > | MR::VoxelsSave::toDicom (const VoxelsVolume< Vector< std::uint16_t, VoxelId > > &volume, const std::filesystem::path &path, const std::optional< MinMaxf > &sourceScale, const ProgressCallback &cb) |
| MR_BIND_IGNORE Expected< void > | MR::FixUndercuts::fixUndercuts (Mesh &mesh, const Vector3f &upDirection, float voxelSize=0.0f, float bottomExtension=0.0f) |
| MR_BIND_IGNORE Expected< void > | MR::FixUndercuts::fixUndercuts (Mesh &mesh, const FaceBitSet &selectedArea, const Vector3f &upDirection, float voxelSize=0.0f, float bottomExtension=0.0f) |
| Expected< void > | MR::FixUndercuts::fix (Mesh &mesh, const FixParams ¶ms) |
| UndercutMetric | MR::FixUndercuts::getUndercutAreaMetric (const Mesh &mesh) |
| | returns the metric that computes total area of undercut faces
|
| UndercutMetric | MR::FixUndercuts::getUndercutAreaProjectionMetric (const Mesh &mesh) |
| | returns the metric that computes summed absolute projected area of undercut
|
| MR_BIND_IGNORE void | MR::FixUndercuts::findUndercuts (const Mesh &mesh, const Vector3f &upDirection, FaceBitSet &outUndercuts) |
| | Adds to.
|
| MR_BIND_IGNORE void | MR::FixUndercuts::findUndercuts (const Mesh &mesh, const Vector3f &upDirection, VertBitSet &outUndercuts) |
| | Adds to.
|
| MR_BIND_IGNORE double | MR::FixUndercuts::findUndercuts (const Mesh &mesh, const Vector3f &upDirection, FaceBitSet &outUndercuts, const UndercutMetric &metric) |
| double | MR::FixUndercuts::find (const Mesh &mesh, const FindParams ¶ms, FaceBitSet &outUndercuts, const UndercutMetric &metric={}) |
| void | MR::FixUndercuts::find (const Mesh &mesh, const FindParams ¶ms, VertBitSet &outUndercuts) |
| | Adds undercuts to.
|
| double | MR::FixUndercuts::scoreUndercuts (const Mesh &mesh, const Vector3f &upDirection, const Vector2i &resolution) |
| Vector3f | MR::FixUndercuts::improveDirection (const Mesh &mesh, const ImproveDirectionParameters ¶ms, const UndercutMetric &metric) |
| Vector3f | MR::FixUndercuts::distMapImproveDirection (const Mesh &mesh, const DistMapImproveDirectionParameters ¶ms) |
| Expected< Mesh > | MR::marchingCubes (const SimpleVolume &volume, const MarchingCubesParams ¶ms={}) |
| | makes Mesh from SimpleVolume with given settings using Marching Cubes algorithm
|
| Expected< TriMesh > | MR::marchingCubesAsTriMesh (const SimpleVolume &volume, const MarchingCubesParams ¶ms={}) |
| Expected< Mesh > | MR::marchingCubes (const SimpleVolumeMinMax &volume, const MarchingCubesParams ¶ms={}) |
| | makes Mesh from SimpleVolumeMinMax with given settings using Marching Cubes algorithm
|
| Expected< TriMesh > | MR::marchingCubesAsTriMesh (const SimpleVolumeMinMax &volume, const MarchingCubesParams ¶ms={}) |
| Expected< Mesh > | MR::marchingCubes (const VdbVolume &volume, const MarchingCubesParams ¶ms={}) |
| | makes Mesh from VdbVolume with given settings using Marching Cubes algorithm
|
| Expected< TriMesh > | MR::marchingCubesAsTriMesh (const VdbVolume &volume, const MarchingCubesParams ¶ms={}) |
| Expected< Mesh > | MR::marchingCubes (const FunctionVolume &volume, const MarchingCubesParams ¶ms={}) |
| | makes Mesh from FunctionVolume with given settings using Marching Cubes algorithm
|
| Expected< TriMesh > | MR::marchingCubesAsTriMesh (const FunctionVolume &volume, const MarchingCubesParams ¶ms={}) |
| Expected< Mesh > | MR::marchingCubes (const SimpleBinaryVolume &volume, const MarchingCubesParams ¶ms={}) |
| | makes Mesh from SimpleBinaryVolume with given settings using Marching Cubes algorithm
|
| Expected< TriMesh > | MR::marchingCubesAsTriMesh (const SimpleBinaryVolume &volume, const MarchingCubesParams ¶ms={}) |
| | MR::MarchingCubesByParts::MarchingCubesByParts (const Vector3i &dims, const MarchingCubesParams ¶ms, int layersPerBlock=0) |
| | MR::MarchingCubesByParts::~MarchingCubesByParts () |
| | MR::MarchingCubesByParts::MarchingCubesByParts (MarchingCubesByParts &&s) noexcept |
| MarchingCubesByParts & | MR::MarchingCubesByParts::operator= (MarchingCubesByParts &&s) noexcept |
| int | MR::MarchingCubesByParts::layersPerBlock () const |
| | the number of z-slices of the volume in the blocks
|
| int | MR::MarchingCubesByParts::nextZ () const |
| | the last z-layer of the previous part and the first z-layer of the next part
|
| Expected< void > | MR::MarchingCubesByParts::addPart (const SimpleVolume &part) |
| | adds one more part of volume into consideration, with first z=nextZ()
|
| Expected< TriMesh > | MR::MarchingCubesByParts::finalize () |
| | finishes processing and outputs produced trimesh
|
| Expected< SimpleVolumeMinMax > | MR::meshToDistanceVolume (const MeshPart &mp, const MeshToDistanceVolumeParams ¶ms) |
| | makes SimpleVolume filled with (signed or unsigned) distances from Mesh with given settings
|
| FunctionVolume | MR::meshToDistanceFunctionVolume (const MeshPart &mp, const MeshToDistanceVolumeParams ¶ms) |
| | makes FunctionVolume representing (signed or unsigned) distances from Mesh with given settings
|
| Expected< SimpleBinaryVolume > | MR::makeCloseToMeshVolume (const MeshPart &mp, const CloseToMeshVolumeParams ¶ms) |
| | makes a binary volume with close-to-surface predicate values according to the given parameters
|
| Expected< SimpleVolumeMinMax > | MR::meshRegionToIndicatorVolume (const Mesh &mesh, const FaceBitSet ®ion, float offset, const DistanceVolumeParams ¶ms) |
| Expected< std::array< SimpleVolumeMinMax, 3 > > | MR::meshToDirectionVolume (const MeshToDirectionVolumeParams ¶ms) |
| | MR::ObjectVoxels::ObjectVoxels () |
| ObjectVoxels & | MR::ObjectVoxels::operator= (ObjectVoxels &&) noexcept=default |
| | MR::ObjectVoxels::ObjectVoxels (ObjectVoxels &&) noexcept=default |
| virtual | MR::ObjectVoxels::~ObjectVoxels ()=default |
| static constexpr const char * | MR::ObjectVoxels::StaticTypeName () noexcept |
| virtual const char * | MR::ObjectVoxels::typeName () const override |
| static constexpr const char * | MR::ObjectVoxels::StaticClassName () noexcept |
| virtual std::string | MR::ObjectVoxels::className () const override |
| static constexpr const char * | MR::ObjectVoxels::StaticClassNameInPlural () noexcept |
| virtual std::string | MR::ObjectVoxels::classNameInPlural () const override |
| virtual void | MR::ObjectVoxels::applyScale (float scaleFactor) override |
| | scale object size (all point positions)
|
| const std::shared_ptr< Mesh > & | MR::ObjectVoxels::surface () const |
| | Returns iso surface, empty if iso value is not set.
|
| const VdbVolume & | MR::ObjectVoxels::vdbVolume () const |
| | Return VdbVolume.
|
| VdbVolume & | MR::ObjectVoxels::varVdbVolume () |
| const FloatGrid & | MR::ObjectVoxels::grid () const |
| | Returns Float grid which contains voxels data, see more on openvdb::FloatGrid.
|
| virtual bool | MR::ObjectVoxels::hasModel () const override |
| const Vector3i & | MR::ObjectVoxels::dimensions () const |
| | Returns dimensions of voxel objects.
|
| float | MR::ObjectVoxels::getIsoValue () const |
| | Returns current iso value.
|
| const Histogram & | MR::ObjectVoxels::histogram () const |
| | Returns histogram.
|
| const Vector3f & | MR::ObjectVoxels::voxelSize () const |
| virtual std::vector< std::string > | MR::ObjectVoxels::getInfoLines () const override |
| | return several info lines that can better describe the object in the UI
|
| void | MR::ObjectVoxels::construct (const SimpleVolume &simpleVolume, const std::optional< Vector2f > &minmax={}, ProgressCallback cb={}, bool normalPlusGrad=false) |
| void | MR::ObjectVoxels::construct (const SimpleVolumeMinMax &simpleVolumeMinMax, ProgressCallback cb={}, bool normalPlusGrad=false) |
| void | MR::ObjectVoxels::construct (const FloatGrid &grid, const Vector3f &voxelSize, const std::optional< Vector2f > &minmax={}) |
| void | MR::ObjectVoxels::construct (const VdbVolume &vdbVolume) |
| | Clears all internal data and then creates grid and calculates histogram (surface is not built, call updateHistogramAndSurface)
|
| void | MR::ObjectVoxels::updateHistogramAndSurface (ProgressCallback cb={}) |
| virtual Expected< bool > | MR::ObjectVoxels::setIsoValue (float iso, ProgressCallback cb={}, bool updateSurface=true) |
| std::shared_ptr< Mesh > | MR::ObjectVoxels::updateIsoSurface (std::shared_ptr< Mesh > mesh) |
| VdbVolume | MR::ObjectVoxels::updateVdbVolume (VdbVolume vdbVolume) |
| Histogram | MR::ObjectVoxels::updateHistogram (Histogram histogram) |
| Expected< std::shared_ptr< Mesh > > | MR::ObjectVoxels::recalculateIsoSurface (float iso, ProgressCallback cb={}) const |
| | Calculates and return new mesh or error message.
|
| Expected< std::shared_ptr< Mesh > > | MR::ObjectVoxels::recalculateIsoSurface (const VdbVolume &volume, float iso, ProgressCallback cb={}) const |
| | Same as above, but takes external volume.
|
| Histogram | MR::ObjectVoxels::recalculateHistogram (std::optional< Vector2f > minmax, ProgressCallback cb={}) const |
| | Calculates and returns new histogram.
|
| bool | MR::ObjectVoxels::getDualMarchingCubes () const |
| | returns true if the iso-surface is built using Dual Marching Cubes algorithm or false if using Standard Marching Cubes
|
| virtual void | MR::ObjectVoxels::setDualMarchingCubes (bool on, bool updateSurface=true, ProgressCallback cb={}) |
| virtual void | MR::ObjectVoxels::setVoxelPointPositioner (VoxelPointPositioner positioner) |
| | set voxel point positioner for Marching Cubes (only for Standard Marching Cubes)
|
| virtual void | MR::ObjectVoxels::setActiveBounds (const Box3i &activeBox, ProgressCallback cb={}, bool updateSurface=true) |
| const Box3i & | MR::ObjectVoxels::getActiveBounds () const |
| virtual void | MR::ObjectVoxels::invalidateActiveBoundsCaches () |
| | Call this function in main thread post processing if you call setActiveBounds from progress bar thread.
|
| const VoxelBitSet & | MR::ObjectVoxels::getSelectedVoxels () const |
| void | MR::ObjectVoxels::selectVoxels (const VoxelBitSet &selectedVoxels) |
| const VoxelBitSet & | MR::ObjectVoxels::getVolumeRenderActiveVoxels () const |
| | get active (visible) voxels
|
| void | MR::ObjectVoxels::setVolumeRenderActiveVoxels (const VoxelBitSet &activeVoxels) |
| | set active (visible) voxels (using only in Volume Rendering mode)
|
| VoxelId | MR::ObjectVoxels::getVoxelIdByCoordinate (const Vector3i &coord) const |
| VoxelId | MR::ObjectVoxels::getVoxelIdByPoint (const Vector3f &point) const |
| Vector3i | MR::ObjectVoxels::getCoordinateByVoxelId (VoxelId id) const |
| const VolumeIndexer & | MR::ObjectVoxels::getVolumeIndexer () const |
| | Returns indexer with more options.
|
| bool | MR::ObjectVoxels::prepareDataForVolumeRendering (ProgressCallback cb={}) const |
| bool | MR::ObjectVoxels::isVolumeRenderingEnabled () const |
| void | MR::ObjectVoxels::enableVolumeRendering (bool on) |
| std::unique_ptr< SimpleVolume > | MR::ObjectVoxels::getVolumeRenderingData () const |
| | move volume rendering data to caller: basically used in RenderVolumeObject
|
| bool | MR::ObjectVoxels::VolumeRenderingParams::operator== (const VolumeRenderingParams &) const =default |
| const VolumeRenderingParams & | MR::ObjectVoxels::getVolumeRenderingParams () const |
| void | MR::ObjectVoxels::setVolumeRenderingParams (const VolumeRenderingParams ¶ms) |
| virtual bool | MR::ObjectVoxels::hasVisualRepresentation () const override |
| | mesh object can be seen if the mesh has at least one edge
|
| void | MR::ObjectVoxels::setMaxSurfaceVertices (int maxVerts) |
| | sets top limit on the number of vertices in the iso-surface
|
| int | MR::ObjectVoxels::getMaxSurfaceVertices () const |
| | gets top limit on the number of vertices in the iso-surface
|
| virtual std::shared_ptr< Object > | MR::ObjectVoxels::clone () const override |
| virtual std::shared_ptr< Object > | MR::ObjectVoxels::shallowClone () const override |
| virtual void | MR::ObjectVoxels::setDirtyFlags (uint32_t mask, bool invalidateCaches=true) override |
| size_t | MR::ObjectVoxels::activeVoxels () const |
| | returns cached information about the number of active voxels
|
| | MR::ObjectVoxels::ObjectVoxels (ProtectedStruct, const ObjectVoxels &obj) |
| virtual size_t | MR::ObjectVoxels::heapBytes () const override |
| | returns the amount of memory this object occupies on heap
|
| const char * | MR::ObjectVoxels::serializeFormat () const |
| | returns overriden file extension used to serialize voxels inside this object, nullptr means defaultSerializeVoxelsFormat()
|
| void | MR::ObjectVoxels::setSerializeFormat (const char *newFormat) |
| void | MR::ObjectVoxels::resetFrontColor () override |
| | reset basic object colors to their default values from the current theme
|
| | MR::ObjectVoxels::ObjectVoxels (const ObjectVoxels &other)=default |
| virtual void | MR::ObjectVoxels::swapBase_ (Object &other) override |
| | swaps this object with other
|
| virtual void | MR::ObjectVoxels::swapSignals_ (Object &other) override |
| virtual void | MR::ObjectVoxels::serializeFields_ (Json::Value &root) const override |
| void | MR::ObjectVoxels::deserializeFields_ (const Json::Value &root) override |
| Expected< void > | MR::ObjectVoxels::deserializeModel_ (const std::filesystem::path &path, ProgressCallback progressCb={}) override |
| | Reads model from file.
|
| virtual Expected< std::future< Expected< void > > > | MR::ObjectVoxels::serializeModel_ (const std::filesystem::path &path) const override |
| const std::string & | MR::defaultSerializeVoxelsFormat () |
| void | MR::setDefaultSerializeVoxelsFormat (std::string newFormat) |
| float | MR::suggestVoxelSize (const MeshPart &mp, float approxNumVoxels) |
| | computes size of a cubical voxel to get approximately given number of voxels during rasterization
|
| Expected< Mesh > | MR::offsetMesh (const MeshPart &mp, float offset, const OffsetParameters ¶ms={}) |
| Expected< Mesh > | MR::doubleOffsetMesh (const MeshPart &mp, float offsetA, float offsetB, const OffsetParameters ¶ms={}) |
| Expected< Mesh > | MR::mcOffsetMesh (const MeshPart &mp, float offset, const OffsetParameters ¶ms={}, Vector< VoxelId, FaceId > *outMap=nullptr) |
| Expected< Mesh > | MR::mcShellMeshRegion (const Mesh &mesh, const FaceBitSet ®ion, float offset, const BaseShellParameters ¶ms, Vector< VoxelId, FaceId > *outMap=nullptr) |
| Expected< Mesh > | MR::sharpOffsetMesh (const MeshPart &mp, float offset, const SharpOffsetParameters ¶ms={}) |
| Expected< Mesh > | MR::generalOffsetMesh (const MeshPart &mp, float offset, const GeneralOffsetParameters ¶ms) |
| Expected< Mesh > | MR::thickenMesh (const Mesh &mesh, float offset, const GeneralOffsetParameters ¶ms={}, const PartMapping &map={}) |
| | mapping between original mesh and thicken result
|
| Expected< Mesh > | MR::offsetOneDirection (const MeshPart &mp, float offset, const GeneralOffsetParameters ¶ms={}) |
| Expected< Mesh > | MR::offsetPolyline (const Polyline3 &polyline, float offset, const OffsetParameters ¶ms={}) |
| | MR::RangeProcessor< TreeT, Transformer >::RangeProcessor (const openvdb::math::CoordBBox &b, const TreeT &inT, TreeT &outT, const Transformer &xform) |
| | MR::RangeProcessor< TreeT, Transformer >::RangeProcessor (const openvdb::math::CoordBBox &b, const TreeT &inTree, const Transformer &xform) |
| | MR::RangeProcessor< TreeT, Transformer >::~RangeProcessor () |
| | MR::RangeProcessor< TreeT, Transformer >::RangeProcessor (RangeProcessor &other, tbb::split) |
| | Splitting constructor: don't copy the original processor's output tree.
|
| void | MR::RangeProcessor< TreeT, Transformer >::setInterrupt (const InterruptFunc &f) |
| void | MR::RangeProcessor< TreeT, Transformer >::operator() (const LeafRange &rCRef) |
| | Transform each leaf node in the given range.
|
| void | MR::RangeProcessor< TreeT, Transformer >::join (RangeProcessor &other) |
| | Merge another processor's output tree into this processor's tree.
|
| void | MR::ShiftTransformer< TreeT >::operator() (const InTreeAccessor &inAcc, OutTreeAccessor &outAcc, openvdb::math::Coord coord) |
| void | MR::ShiftTransformer< TreeT >::setShift (const openvdb::math::Coord &shift) |
| void | MR::translateToZero (openvdb::FloatGrid &grid) |
| | MR::RangeProgress::RangeProgress (ProgressCallback cb, size_t size, Mode mode) |
| void | MR::RangeProgress::add (size_t l, size_t t) |
| bool | MR::RangeProgress::reportProgress () const |
| | retorts progress if called from main thread, otherwise do nothing
|
| | MR::RangeProcessorSingle< TreeT, Proc >::RangeProcessorSingle (const openvdb::math::CoordBBox &b, const TreeT &inT, const Proc &proc) |
| | MR::RangeProcessorSingle< TreeT, Proc >::RangeProcessorSingle (RangeProcessorSingle &other, tbb::split) |
| | Splitting constructor: don't copy the original processor's output tree.
|
| void | MR::RangeProcessorSingle< TreeT, Proc >::setInterrupt (const InterruptFunc &f) |
| void | MR::RangeProcessorSingle< TreeT, Proc >::setProgressHolder (ProgressHolder progressHolder) |
| void | MR::RangeProcessorSingle< TreeT, Proc >::operator() (const LeafRange &rCRef) |
| | Transform each leaf node in the given range.
|
| void | MR::RangeProcessorSingle< TreeT, Proc >::join (RangeProcessorSingle &other) |
| | Merge another processor's output tree into this processor's tree.
|
| | MR::RangeCounter< TreeT >::RangeCounter () |
| | MR::RangeCounter< TreeT >::RangeCounter (const RangeCounter &) |
| void | MR::RangeCounter< TreeT >::action (const LeafIterT &, const TreeAccessor &, const openvdb::math::CoordBBox &) |
| void | MR::RangeCounter< TreeT >::action (const TileIterT &, const TreeAccessor &, const openvdb::math::CoordBBox &) |
| void | MR::RangeCounter< TreeT >::join (const RangeCounter &other) |
| template<typename GridT> |
| RangeSize | MR::calculateRangeSize (const GridT &grid) |
| Expected< Mesh > | MR::partialOffsetMesh (const MeshPart &mp, float offset, const GeneralOffsetParameters ¶ms={}) |
| Expected< SimpleVolume > | MR::pointsToDistanceVolume (const PointCloud &cloud, const PointsToDistanceVolumeParams ¶ms) |
| | makes SimpleVolume filled with signed distances to points with normals
|
| FunctionVolume | MR::pointsToDistanceFunctionVolume (const PointCloud &cloud, const PointsToDistanceVolumeParams ¶ms) |
| | makes FunctionVolume representing signed distances to points with normals
|
| Expected< VertColors > | MR::calcAvgColors (const PointCloud &cloud, const VertColors &colors, const VertCoords &tgtPoints, const VertBitSet &tgtVerts, float sigma, const ProgressCallback &cb={}) |
| Expected< Mesh > | MR::pointsToMeshFusion (const PointCloud &cloud, const PointsToMeshParameters ¶ms) |
| Expected< FloatGrid > | MR::polylineToDistanceField (const Polyline3 &polyline, const PolylineToDistanceVolumeParams ¶ms) |
| | convert polyline to voxels distance field
|
| Expected< VdbVolume > | MR::polylineToVdbVolume (const Polyline3 &polyline, const PolylineToDistanceVolumeParams ¶ms) |
| | convert polyline to VDB volume
|
| Expected< SimpleVolume > | MR::polylineToSimpleVolume (const Polyline3 &polyline, const PolylineToVolumeParams ¶ms) |
| | convert polyline to simple volume
|
| Expected< FunctionVolume > | MR::polylineToFunctionVolume (const Polyline3 &polyline, const PolylineToVolumeParams ¶ms) |
| | convert polyline to function volume
|
| Expected< Mesh > | MR::rebuildMesh (const MeshPart &mp, const RebuildMeshSettings &settings) |
| std::function< float(const char *)> | MR::getTypeConverter (ScalarType scalarType, Uint64 range, Int64 min) |
| template<typename F> |
| std::invoke_result_t< F, int > | MR::visitScalarType (F &&f, ScalarType scalarType, const char *c) |
| | More general template to pass a single value of specified format scalarType to a generic function f.
|
| auto | MR::SliceInfoBase::operator<=> (const SliceInfoBase &) const =default |
| void | MR::sortScansByOrder (std::vector< std::filesystem::path > &scans, std::vector< SliceInfo > &zOrder) |
| | Sort scan files in given vector by given slice information.
|
| void | MR::putScanFileNameInZ (const std::vector< std::filesystem::path > &scans, std::vector< SliceInfo > &zOrder) |
| | Read layer heights from given scan file names.
|
| void | MR::sortScanFilesByName (std::vector< std::filesystem::path > &scans) |
| | Sort scan files in given vector by names (respect numbers in it)
|
| | MR::Nesting::SequentialNester::SequentialNester (const NestingBaseParams ¶ms, float voxelSize) |
| | if voxelSize > 0 peform densification on each addition
|
| Expected< NestingResult > | MR::Nesting::SequentialNester::nestMesh (const MeshXf &meshXf, const BoxNestingOptions &options, const std::vector< OutEdge > *densificationSequence=nullptr) |
| Expected< Vector< NestingResult, ObjId > > | MR::Nesting::SequentialNester::nestMeshes (const Vector< MeshXf, ObjId > &meshes, const BoxNestingOptions &options, const std::vector< OutEdge > *densificationSequence=nullptr) |
| Box3f | MR::computeWorkArea (const Polyline3 &toolpath, const MeshPart &tool) |
| | Compute bounding box for swept volume for given tool and toolpath.
|
| Box3i | MR::computeGridBox (const Box3f &workArea, float voxelSize) |
| | Compute required voxel volume's dimensions for given work area.
|
| Expected< Mesh > | MR::computeSweptVolumeWithMeshMovement (const ComputeSweptVolumeParameters ¶ms) |
| Expected< Mesh > | MR::computeSweptVolumeWithDistanceVolume (const ComputeSweptVolumeParameters ¶ms) |
| virtual | MR::IComputeToolDistance::~IComputeToolDistance ()=default |
| virtual Expected< Vector3i > | MR::IComputeToolDistance::prepare (const Vector3i &dims, const Polyline3 &toolpath, const EndMillTool &toolSpec)=0 |
| virtual Expected< Vector3i > | MR::IComputeToolDistance::prepare (const Vector3i &dims, const Polyline3 &toolpath, const Polyline2 &toolProfile)=0 |
| virtual Expected< void > | MR::IComputeToolDistance::computeToolDistance (std::vector< float > &output, const Vector3i &dims, float voxelSize, const Vector3f &origin, float padding) const =0 |
| | Compute tool distance.
|
| Expected< Mesh > | MR::computeSweptVolumeWithCustomToolDistance (IComputeToolDistance &comp, const ComputeSweptVolumeParameters ¶ms) |
| template<int id> |
| static constexpr DentalId | MR::DentalId::fromFDI () |
| | Creates id from FDI number known at compile time.
|
| static std::optional< DentalId > | MR::DentalId::fromFDI (int id) |
| | Creates id from FDI number known only at runtime.
|
| int | MR::DentalId::fdi () const |
| | Returns FDI representation of the id.
|
| auto | MR::DentalId::operator<=> (const DentalId &other) const =default |
| static Expected< TeethMaskToDirectionVolumeConvertor > | MR::TeethMaskToDirectionVolumeConvertor::create (const VdbVolume &volume, const std::vector< int > &additionalIds={}) |
| const HashMap< int, Box3i > & | MR::TeethMaskToDirectionVolumeConvertor::getObjectBounds () const |
| | Returns all the objects present in volume and corresponding bounding boxes.
|
| Expected< ProcessResult > | MR::TeethMaskToDirectionVolumeConvertor::convertObject (int id) const |
| | Converts single object into direction volume.
|
| Expected< ProcessResult > | MR::TeethMaskToDirectionVolumeConvertor::convertAll () const |
| | Converts all the objects into direction volume.
|
| Expected< std::array< SimpleVolumeMinMax, 3 > > | MR::teethMaskToDirectionVolume (const VdbVolume &volume, const std::vector< int > &additionalIds={}) |
| | A shortcut for TeethMaskToDirectionVolumeConvertor::create and TeethMaskToDirectionVolumeConvertor::convertAll.
|
| Expected< Vector< AffineXf3f, ObjId > > | MR::Nesting::tetrisNestingDensify (const Vector< MeshXf, ObjId > &meshes, const TetrisDensifyParams ¶ms) |
| | make nested meshes more compact by representing them via voxels and pushing to nest zero
|
| Expected< ToolPathResult > | MR::constantZToolPath (const MeshPart &mp, const ToolPathParams ¶ms) |
| Expected< ToolPathResult > | MR::lacingToolPath (const MeshPart &mp, const ToolPathParams ¶ms, Axis cutDirection) |
| | Slices are built along the axis defined by cutDirection argument (can be Axis::X or Axis::Y)
|
| Expected< ToolPathResult > | MR::constantCuspToolPath (const MeshPart &mp, const ConstantCuspParams ¶ms) |
| std::shared_ptr< ObjectGcode > | MR::exportToolPathToGCode (const std::vector< GCommand > &commands) |
| | generates G-Code for milling tool
|
| Expected< void > | MR::interpolateLines (std::vector< GCommand > &commands, const LineInterpolationParams ¶ms, Axis axis) |
| | interpolates several points lying on the same straight line with one move
|
| Expected< void > | MR::interpolateArcs (std::vector< GCommand > &commands, const ArcInterpolationParams ¶ms, Axis axis) |
| | interpolates given path with arcs
|
| FaceBitSet | MR::smoothSelection (Mesh &mesh, const FaceBitSet ®ion, float expandOffset, float shrinkOffset) |
| FloatGrid | MR::meshToLevelSet (const MeshPart &mp, const AffineXf3f &xf, const Vector3f &voxelSize, float surfaceOffset=3, ProgressCallback cb={}) |
| FloatGrid | MR::meshToDistanceField (const MeshPart &mp, const AffineXf3f &xf, const Vector3f &voxelSize, float surfaceOffset=3, ProgressCallback cb={}) |
| void | MR::evalGridMinMax (const FloatGrid &grid, float &min, float &max) |
| | eval min max value from FloatGrid
|
| Expected< VdbVolume > | MR::meshToDistanceVdbVolume (const MeshPart &mp, const MeshToVolumeParams ¶ms={}) |
| Expected< VdbVolume > | MR::meshToVolume (const MeshPart &mp, const MeshToVolumeParams ¶ms={}) |
| VdbVolume | MR::floatGridToVdbVolume (FloatGrid grid) |
| | fills VdbVolume data from FloatGrid (does not fill voxels size, cause we expect it outside)
|
| FloatGrid | MR::simpleVolumeToDenseGrid (const SimpleVolume &simpleVolume, float background=0.0f, ProgressCallback cb={}) |
| VdbVolume | MR::simpleVolumeToVdbVolume (const SimpleVolumeMinMax &simpleVolume, ProgressCallback cb={}) |
| | set the simpleVolume.min as the background value
|
| VdbVolume | MR::functionVolumeToVdbVolume (const FunctionVolume &functoinVolume, ProgressCallback cb={}) |
| template<typename AccessorOrGrid> |
| void | MR::putSimpleVolumeInDenseGrid (AccessorOrGrid &gridAccessor, const Vector3i &minCoord, const SimpleVolume &simpleVolume, ProgressCallback cb={}) |
| | Copy given simpleVolume into the grid, starting at minCoord Instantiated for AccessorOrGrid in { openvdb::FloatGrid::Accessor, FloatGrid, openvdb::FloatGrid }. The template is used to not include openvdb's mess into this header (forward declaring classes in openvdb is also non-trivial). When used with a Grid, multithreaded implementation of copying is used (so the function is not thread safe). When used with an Accessor, this function could be called from different threads on the same volume (provided that accessors are different, of course).
|
| Expected< SimpleVolumeMinMax > | MR::vdbVolumeToSimpleVolume (const VdbVolume &vdbVolume, const Box3i &activeBox=Box3i(), ProgressCallback cb={}) |
| Expected< SimpleVolumeMinMax > | MR::vdbVolumeToSimpleVolumeNorm (const VdbVolume &vdbVolume, const Box3i &activeBox=Box3i(), std::optional< MinMaxf > sourceScale={}, ProgressCallback cb={}) |
| Expected< SimpleVolumeMinMaxU16 > | MR::vdbVolumeToSimpleVolumeU16 (const VdbVolume &vdbVolume, const Box3i &activeBox=Box3i(), std::optional< MinMaxf > sourceScale={}, ProgressCallback cb={}) |
| Expected< Mesh > | MR::gridToMesh (const FloatGrid &grid, const GridToMeshSettings &settings) |
| | converts OpenVDB Grid into mesh using Dual Marching Cubes algorithm
|
| Expected< Mesh > | MR::gridToMesh (FloatGrid &&grid, const GridToMeshSettings &settings) |
| Expected< void > | MR::makeSignedByWindingNumber (FloatGrid &grid, const Vector3f &voxelSize, const Mesh &refMesh, const MakeSignedByWindingNumberSettings &settings) |
| | set signs for unsigned distance field grid using generalized winding number computed at voxel grid point from refMesh
|
| Expected< Mesh > | MR::doubleOffsetVdb (const MeshPart &mp, const DoubleOffsetSettings &settings) |
| | MR::ProgressInterrupter::ProgressInterrupter (ProgressCallback cb) |
| virtual bool | MR::ProgressInterrupter::wasInterrupted (int percent=-1) override |
| bool | MR::ProgressInterrupter::getWasInterrupted () const |
| | MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VoxelsVolumeInterpolatedAccessor (const VolumeType &volume, const Accessor &accessor) |
| | MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VoxelsVolumeInterpolatedAccessor (const VoxelsVolumeInterpolatedAccessor &)=delete |
| | delete copying constructor to avoid accidentally creating non-thread-safe accessors
|
| | MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VoxelsVolumeInterpolatedAccessor (const VoxelsVolumeInterpolatedAccessor &other, const Accessor &accessor) |
| | a copying-like constructor with explicitly provided accessor
|
| ValueType | MR::VoxelsVolumeInterpolatedAccessor< Accessor >::get (const Vector3f &pos) const |
| | get value at specified coordinates
|
| template<typename Accessor> |
| SimpleVolumeMinMax | MR::resampleVolumeByInterpolation (const typename Accessor::VolumeType &volume, const Accessor &accessor, const Vector3f &newVoxelSize) |
| | sample function that resamples the voxel volume using interpolating accessor
|
| VdbVolume | MR::voxelFilter (const VdbVolume &volume, VoxelFilterType type, int width) |
| TransformVdbVolumeResult | MR::transformVdbVolume (const VdbVolume &volume, const AffineXf3f &xf, bool fixBox=false, const Box3f &box={}) |
| bool | MR::voxelsApplyTransform (ObjectVoxels &obj, const AffineXf3f &xf, bool fixBox) |
| template<typename Volume> |
| Expected< void > | MR::mergeVolumePart (Mesh &mesh, std::vector< EdgePath > &cutContours, Volume &&volume, float leftCutPosition, float rightCutPosition, const MergeVolumePartSettings &settings={}) |
| | Merge one mesh with another generated from a voxel volume part.
|
| template<typename Volume> |
| Expected< Mesh > | MR::volumeToMeshByParts (const VolumePartBuilder< Volume > &builder, const Vector3i &dimensions, const Vector3f &voxelSize, const VolumeToMeshByPartsSettings &settings={}, const MergeVolumePartSettings &mergeSettings={}) |
| | converts a voxel volume into a mesh without full memory loading
|
| MRVOXELS_CLASS | MR::VoxelsVolumeMinMax< Vector< float, VoxelId > > (SimpleVolumeMinMaxU16, VoxelsVolumeMinMax< Vector< uint16_t, VoxelId > >)(VdbVolume |
| MRVOXELS_CLASS | MR::VoxelsVolume< VoxelValueGetter< float > > (FunctionVolumeU8, VoxelsVolume< VoxelValueGetter< uint8_t > >)(SimpleVolume |
| MRVOXELS_CLASS | MR::VoxelsVolume< Vector< float, VoxelId > > (SimpleVolumeU16, VoxelsVolume< Vector< uint16_t, VoxelId > >)(SimpleBinaryVolume |
| size_t | MR::VoxelsVolume< T >::heapBytes () const |
| Expected< SimpleVolumeMinMax > | MR::functionVolumeToSimpleVolume (const FunctionVolume &volume, const ProgressCallback &callback={}) |
| | converts function volume into simple volume
|
| | MR::VoxelsVolumeAccessor< VdbVolume >::VoxelsVolumeAccessor (const VolumeType &volume) |
| ValueType | MR::VoxelsVolumeAccessor< VdbVolume >::get (const Vector3i &pos) const |
| ValueType | MR::VoxelsVolumeAccessor< VdbVolume >::get (const VoxelLocation &loc) const |
| const Vector3i & | MR::VoxelsVolumeAccessor< VdbVolume >::minCoord () const |
| Vector3f | MR::VoxelsVolumeAccessor< VdbVolume >::shift () const |
| | this additional shift shall be added to integer voxel coordinates during transformation in 3D space
|
| | MR::VoxelsVolumeAccessor< VoxelsVolume< Vector< T, VoxelId > > >::VoxelsVolumeAccessor (const VolumeType &volume) |
| ValueType | MR::VoxelsVolumeAccessor< VoxelsVolume< Vector< T, VoxelId > > >::get (const Vector3i &pos) const |
| ValueType | MR::VoxelsVolumeAccessor< VoxelsVolume< Vector< T, VoxelId > > >::get (const VoxelLocation &loc) const |
| Vector3f | MR::VoxelsVolumeAccessor< VoxelsVolume< Vector< T, VoxelId > > >::shift () const |
| | this additional shift shall be added to integer voxel coordinates during transformation in 3D space
|
| | MR::VoxelsVolumeAccessor< VoxelsVolume< VoxelValueGetter< T > > >::VoxelsVolumeAccessor (const VolumeType &volume) |
| ValueType | MR::VoxelsVolumeAccessor< VoxelsVolume< VoxelValueGetter< T > > >::get (const Vector3i &pos) const |
| ValueType | MR::VoxelsVolumeAccessor< VoxelsVolume< VoxelValueGetter< T > > >::get (const VoxelLocation &loc) const |
| Vector3f | MR::VoxelsVolumeAccessor< VoxelsVolume< VoxelValueGetter< T > > >::shift () const |
| | this additional shift shall be added to integer voxel coordinates during transformation in 3D space
|
| | MR::VoxelsVolumeCachingAccessor< V >::VoxelsVolumeCachingAccessor (const VoxelsVolumeAccessor< V > &accessor, const VolumeIndexer &indexer, Parameters parameters={}) |
| int | MR::VoxelsVolumeCachingAccessor< V >::currentLayer () const |
| | get current layer
|
| bool | MR::VoxelsVolumeCachingAccessor< V >::preloadLayer (int z, const ProgressCallback &cb={}) |
| bool | MR::VoxelsVolumeCachingAccessor< V >::preloadNextLayer (const ProgressCallback &cb={}) |
| ValueType | MR::VoxelsVolumeCachingAccessor< V >::get (const VoxelLocation &loc) const |
| | get voxel volume data
|
| bool | fromSameTriangle (const MeshTopology &topology, EdgePoint &a, EdgePoint &b) |
| bool | fromSameTriangle (const MeshTopology &topology, EdgePoint &&a, EdgePoint &&b) |
| template<typename V> |
| std::pair< QuadraticForm< V >, V > | sum (const QuadraticForm< V > &q0, const V &x0, const QuadraticForm< V > &q1, const V &x1, bool minAmong01=false) |
| | if true then the minimum is selected only between points x0 and x1
|
| template<typename V> |
| QuadraticForm< V > | sumAt (const QuadraticForm< V > &q0, const V &x0, const QuadraticForm< V > &q1, const V &x1, const V &pos) |
|
| UI::RadioButtonOrModifierState | MR::MoveObjectByMouse::MoveObjectByMouseWithSelected::modXfMode {} |
| | Options are provided externally rather than directly from modifiers.
|
| UI::RadioButtonOrModifierState | MR::MoveObjectByMouse::MoveObjectByMouseWithSelected::modXfTarget {} |
| | XfMode.
|
| bool | MR::EmbeddedPython::Config::siteImport { true } |
| std::string | MR::EmbeddedPython::Config::home |
| std::vector< std::string > | MR::EmbeddedPython::Config::argv |
| static MREMBEDDEDPYTHON_API Config | MR::EmbeddedPython::pythonConfig |
| MeshCompression | MR::MeshSave::CtmSaveOptions::meshCompression = MeshCompression::Lossless |
| float | MR::MeshSave::CtmSaveOptions::vertexPrecision = 1.0f / 1024.0f |
| int | MR::MeshSave::CtmSaveOptions::compressionLevel = 1 |
| | LZMA compression: 0 - minimal compression, but fast; 9 - maximal compression, but slow.
|
| const char * | MR::MeshSave::CtmSaveOptions::comment = "MeshInspector.com" |
| | comment saved in the file
|
| int | MR::PointsSave::CtmSavePointsOptions::compressionLevel = 1 |
| | 0 - minimal compression, but fast; 9 - maximal compression, but slow
|
| const char * | MR::PointsSave::CtmSavePointsOptions::comment = "MeshInspector Points" |
| | comment saved in the file
|
| Vector< MeshXf, ObjId > | MR::Nesting::Nesting3mfParams::meshes |
| | nested meshes with their transforms into nest
|
| float | MR::Nesting::Nesting3mfParams::zStep = 1.0f |
| | slicing step
|
| bool | MR::Nesting::Nesting3mfParams::decimateSlices { true } |
| | if set: decimate slices
|
| const Image * | MR::Nesting::Nesting3mfParams::image = nullptr |
| | optional image of all meshes in nest
|
| const std::vector< Image > * | MR::Nesting::Nesting3mfParams::meshImages { nullptr } |
| | optional screen shots of each mesh one by one
|
| const std::vector< std::string > * | MR::Nesting::Nesting3mfParams::meshNames { nullptr } |
| | optional names of each mesh one by one
|
| ProgressCallback | MR::Nesting::Nesting3mfParams::cb |
| float | MR::PdfParameters::titleSize = 18.f |
| float | MR::PdfParameters::textSize = 14.f |
| PdfGeneralFont | MR::PdfParameters::defaultFont = PdfBuildinFont::Helvetica |
| | Font name.
|
| PdfGeneralFont | MR::PdfParameters::defaultFontBold = PdfBuildinFont::HelveticaBold |
| PdfGeneralFont | MR::PdfParameters::tableFont = PdfBuildinFont::Courier |
| PdfGeneralFont | MR::PdfParameters::tableFontBold = PdfBuildinFont::CourierBold |
| PdfGeneralFont | MR::Pdf::TextParams::fontName = PdfBuildinFont::Helvetica |
| float | MR::Pdf::TextParams::fontSize = 14.f |
| AlignmentHorizontal | MR::Pdf::TextParams::alignment = AlignmentHorizontal::Left |
| Color | MR::Pdf::TextParams::colorText = Color::black() |
| bool | MR::Pdf::TextParams::underline = false |
| Color | MR::Pdf::PaletteRowStats::color |
| std::string | MR::Pdf::PaletteRowStats::rangeMin |
| std::string | MR::Pdf::PaletteRowStats::rangeMax |
| std::string | MR::Pdf::PaletteRowStats::percent |
| Vector2f | MR::Pdf::ImageParams::size |
| std::string | MR::Pdf::ImageParams::caption |
| | caption if not empty - add caption under marks (if exist) or image.
|
| enum MR::Pdf::ImageParams::UniformScale | MR::Pdf::ImageParams::uniformScale = UniformScale::None |
| enum MR::Pdf::ImageParams::AlignmentVertical | MR::Pdf::ImageParams::alignmentVertical = AlignmentVertical::Top |
| AlignmentHorizontal | MR::Pdf::ImageParams::alignmentHorizontal = AlignmentHorizontal::Left |
| Value | MR::Pdf::Cell::data |
| std::optional< Color > | MR::Pdf::CellCustomParams::colorText |
| std::optional< Color > | MR::Pdf::CellCustomParams::colorCellBg |
| std::optional< Color > | MR::Pdf::CellCustomParams::colorCellBorder |
| std::optional< std::string > | MR::Pdf::CellCustomParams::text |
| TextParams | MR::Pdf::TextCellParams::textParams |
| Box2f | MR::Pdf::TextCellParams::rect |
| Color | MR::Pdf::TextCellParams::colorBorder = Color::transparent() |
| Color | MR::Pdf::TextCellParams::colorBackground = Color::transparent() |
| float | MR::Pdf::ColumnInfo::width = 100 |
| std::string | MR::Pdf::ColumnInfo::valueFormat = "{}" |
| Color | MR::Pdf::TableGeneralParams::colorTitleText = Color::white() |
| Color | MR::Pdf::TableGeneralParams::colorTitleBg { 42, 102, 246 } |
| Color | MR::Pdf::TableGeneralParams::colorCellText = Color::black() |
| Color | MR::Pdf::TableGeneralParams::colorCellBg1 { 170, 194, 251 } |
| Color | MR::Pdf::TableGeneralParams::colorCellBg2 { 212, 224, 253 } |
| Color | MR::Pdf::TableGeneralParams::colorLines = Color::white() |
| float | MR::Pdf::TableGeneralParams::fontSize = 12.f |
| VertId | MR::PlanarTriangulation::IntersectionInfo::lOrg |
| VertId | MR::PlanarTriangulation::IntersectionInfo::lDest |
| VertId | MR::PlanarTriangulation::IntersectionInfo::uOrg |
| | ids of upper intersection edge vertices
|
| VertId | MR::PlanarTriangulation::IntersectionInfo::uDest |
| float | MR::PlanarTriangulation::IntersectionInfo::lRatio = 0.0f |
| float | MR::PlanarTriangulation::IntersectionInfo::uRatio = 0.0f |
| size_t | MR::PlanarTriangulation::IntersectionsMap::shift { 0 } |
| | shift of index
|
| ContourIdMap | MR::PlanarTriangulation::IntersectionsMap::map |
| | map[id-shift] = {lower intersection edge, upper intersection edge}
|
| bool | MR::PlanarTriangulation::BaseOutlineParameters::allowMerge { false } |
| | allow to merge vertices with same coordinates
|
| WindingMode | MR::PlanarTriangulation::BaseOutlineParameters::innerType { WindingMode::Negative } |
| | what to mark as inner part
|
| ContoursIdMap * | MR::PlanarTriangulation::OutlineParameters::indicesMap { nullptr } |
| | optional output from result contour ids to input ones
|
| BaseOutlineParameters | MR::PlanarTriangulation::OutlineParameters::baseParams |
| NodeVec | MR::AABBTreeBase< T >::nodes_ |
| float | MR::NoiseSettings::sigma = 0.01f |
| unsigned int | MR::NoiseSettings::seed = 0 |
| | start state of the generator engine
|
| ProgressCallback | MR::NoiseSettings::callback = {} |
| std::array< ViewportMask, sizeof...(Properties)> | MR::AddVisualProperties< BaseObjectType, Properties >::propertyMasks_ |
| | All enabled by default.
|
| M | MR::AffineXf< V >::A |
| V | MR::AffineXf< V >::b |
| MeshTriPoint | MR::FlowOrigin::point |
| | point on the mesh, where this flow starts
|
| float | MR::FlowOrigin::amount = 1 |
| | amount of flow, e.g. can be proportional to the horizontal area associated with the start point
|
| Polyline3 * | MR::OutputFlows::pPolyline = nullptr |
| | optional output: lines of all flows
|
| UndirectedEdgeScalars * | MR::OutputFlows::pFlowPerEdge = nullptr |
| | optional output: flow in each line of outPolyline
|
| float | MR::OutputFlows::amountGreaterThan = 0 |
| | output in outPolyline only the flows with the amount greater than
|
| Polyline3 | MR::FlowAggregator::Flows::polyline |
| UndirectedEdgeScalars | MR::FlowAggregator::Flows::flowPerEdge |
| MeshTriPoint | MR::ContoursMeshAlignParams::meshPoint |
| | Point coordinate on mesh, represent position of contours box 'pivotPoint' on mesh.
|
| Vector2f | MR::ContoursMeshAlignParams::pivotPoint { 0.0f, 0.0f } |
| Vector3f | MR::ContoursMeshAlignParams::xDirection |
| | Represents 2d contours xDirection in mesh space.
|
| const Vector3f * | MR::ContoursMeshAlignParams::zDirection { nullptr } |
| float | MR::ContoursMeshAlignParams::extrusion { 1.0f } |
| | Contours extrusion in +z and -z direction.
|
| float | MR::ContoursMeshAlignParams::maximumShift { 2.5f } |
| | Maximum allowed shift along 'zDirection' for alignment.
|
| float | MR::BendContoursAlongCurveParams::pivotCurveTime = 0 |
| Vector2f | MR::BendContoursAlongCurveParams::pivotBoxPoint {0.0f, 0.0f} |
| bool | MR::BendContoursAlongCurveParams::periodicCurve = false |
| | if true, curve parameter will be always within [0,curve.totalLength) with repetition: xr := mod( x, curve.totalLength )
|
| bool | MR::BendContoursAlongCurveParams::stretch = true |
| | stretch all contours along curve to fit in curve.totalLength
|
| float | MR::BendContoursAlongCurveParams::extrusion { 1.0f } |
| | Contours extrusion outside of curve level.
|
| static constexpr int | MR::Ball< V >::elements = VTraits::size |
| V | MR::Ball< V >::center |
| | ball's center
|
| T | MR::Ball< V >::radiusSq = 0 |
| | ball's squared radius
|
| static constexpr size_t | MR::Polynomial< T, degree >::n = degree + 1 |
| MR_BIND_IGNORE Eigen::Vector< T, n > | MR::Polynomial< T, degree >::a |
| | We're not binding Eigen at the moment, so this has to be hidden.
|
| Polynomialx< T > | MR::PolynomialWrapper< T >::poly |
| static constexpr int | MR::CubicBezierCurve< V >::elements = VTraits::size |
| V | MR::CubicBezierCurve< V >::p [4] |
| | 4 control points
|
| Vector3f | MR::Nesting::BoxNestingCorner::pos |
| | Vector3f - corner position.
|
| uint8_t | MR::Nesting::BoxNestingCorner::bitMask { 0 } |
| | corner mask 0bZYX (0b000 - lower left corner, 0b111 - upper right)
|
| bool | MR::Nesting::BoxNestingOptions::allow3dNesting { true } |
| | if true allows placing objects over the bottom plane
|
| bool | MR::Nesting::BoxNestingOptions::allowRotation { false } |
| | set false to keep original XY orientation
|
| bool | MR::Nesting::BoxNestingOptions::volumeBasedOrder = true |
| | if true - nests objects in the order of decreasing volume, otherwise nest in the input order
|
| bool | MR::Nesting::BoxNestingOptions::checkLessCombinations { false } |
| | reduces nesting candidate options for speedup
|
| int | MR::Nesting::BoxNestingOptions::iterationLimit = 10'000'000 |
| | limit maximum number of tries, not to freeze for too long in this function
|
| std::shared_ptr< IBoxNestingPriority > | MR::Nesting::BoxNestingOptions::priorityMetric |
| const Vector3f * | MR::Nesting::BoxNestingOptions::expansionFactor { nullptr } |
| | optional input expansion of boxes (useful to compensate shrinkage of material)
|
| const std::vector< Box3f > * | MR::Nesting::BoxNestingOptions::preNestedVolumes { nullptr } |
| | if not-nullptr contains boxes that are fixed in the nest and should not be intersected by floating (input) meshes
|
| const std::vector< BoxNestingCorner > * | MR::Nesting::BoxNestingOptions::additinalSocketCorners { nullptr } |
| | user might force these sockets to be considered as corners for placing candidates
|
| ProgressCallback | MR::Nesting::BoxNestingOptions::cb |
| | callback indicating progress of the nesting
|
| NestingBaseParams | MR::Nesting::BoxNestingParams::baseParams |
| BoxNestingOptions | MR::Nesting::BoxNestingParams::options |
| T | MR::ZeroOnMove< T >::val = 0 |
| Buffer< T, I > | MR::BMap< T, I >::b |
| size_t | MR::BMap< T, I >::tsize = 0 |
| | target size, all values inside b must be less than this value
|
| UndirectedEdgeBMap | MR::PackMapping::e |
| FaceBMap | MR::PackMapping::f |
| VertBMap | MR::PackMapping::v |
| size_t | MR::Chunk::offset |
| | chunk offset
|
| size_t | MR::Chunk::size |
| | chunk size; the last chunk's size may be smaller than other chunk's ones
|
| size_t | MR::ChunkIterator::totalSize { 0 } |
| size_t | MR::ChunkIterator::chunkSize { 0 } |
| size_t | MR::ChunkIterator::overlap { 0 } |
| size_t | MR::ChunkIterator::index { 0 } |
| VertId | MR::PointAndDistance::vId |
| | a cloud's point
|
| float | MR::PointAndDistance::dist = 0 |
| | the distance from input location to point vId considering point's weight
|
| Vector3f | MR::MeshPointAndDistance::loc |
| | point location
|
| MeshTriPoint | MR::MeshPointAndDistance::mtp |
| | the corresponding point on mesh in barycentric representation
|
| float | MR::MeshPointAndDistance::eucledeanDist = 0 |
| | euclidean distance from input location to mtp
|
| float | MR::MeshPointAndDistance::w = 0 |
| | point's weight
|
| bool | MR::MeshPointAndDistance::bidirectionalOrOutside = true |
| VertMetric | MR::DistanceFromWeightedPointsParams::pointWeight |
| | function returning the weight of each point, must be set by the user
|
| float | MR::DistanceFromWeightedPointsParams::minWeight = 0 |
| float | MR::DistanceFromWeightedPointsParams::maxWeight = 0 |
| float | MR::DistanceFromWeightedPointsParams::maxWeightGrad = FLT_MAX |
| bool | MR::DistanceFromWeightedPointsParams::bidirectionalMode = true |
| float | MR::DistanceFromWeightedPointsComputeParams::minBidirDist = -FLT_MAX |
| float | MR::DistanceFromWeightedPointsComputeParams::maxBidirDist = FLT_MAX |
| | default 0 here does not work for negative distances
|
| VertMap * | MR::CloudPartMapping::src2tgtVerts = nullptr |
| | from.id -> this.id, efficient when full cloud without many invalid points is added into another cloud
|
| VertMap * | MR::CloudPartMapping::tgt2srcVerts = nullptr |
| | this.id -> from.id, efficient when any cloud or its part is added into empty cloud
|
| uint8_t | MR::Color::r |
| uint8_t | MR::Color::g |
| uint8_t | MR::Color::b |
| uint8_t | MR::Color::a |
| ColorMap | MR::ColorMapAggregator< Tag >::PartialColorMap::colorMap |
| ElementBitSet | MR::ColorMapAggregator< Tag >::PartialColorMap::elements |
| | color map
|
| Line3< T > | MR::Cone3< T >::axis |
| T | MR::Cone3< T >::angle = 0 |
| | for any cone point dot( point , direction ) >=0
|
| T | MR::Cone3< T >::height = 0 |
| | cone angle, main axis vs side
|
| std::vector< Eigen::Vector3< T > > | MR::ConeFittingFunctor< T >::points |
| int | MR::Cone3ApproximationParams::levenbergMarquardtMaxIteration = 40 |
| ConeFitterType | MR::Cone3ApproximationParams::coneFitterType = ConeFitterType::HemisphereSearchFit |
| int | MR::Cone3ApproximationParams::hemisphereSearchPhiResolution = 30 |
| int | MR::Cone3ApproximationParams::hemisphereSearchThetaResolution = 30 |
| UndirectedEdgeBitSet | MR::NewEdgesMap::splitEdges |
| HashMap< UndirectedEdgeId, int > | MR::NewEdgesMap::map |
| const SortIntersectionsData * | MR::CutMeshParameters::sortData {nullptr} |
| FaceMap * | MR::CutMeshParameters::new2OldMap {nullptr} |
| | This is optional output - map from newly generated faces to old faces (N-1)
|
| enum MR::CutMeshParameters::ForceFill | MR::CutMeshParameters::None |
| NewEdgesMap * | MR::CutMeshParameters::new2oldEdgesMap { nullptr } |
| | Optional output map for each new edge introduced after cut maps edge from old topology or old face.
|
| std::vector< EdgePath > | MR::CutMeshResult::resultCut |
| | Paths of new edges on mesh, they represent same contours as input, but already cut.
|
| FaceBitSet | MR::CutMeshResult::fbsWithContourIntersections |
| Vector3f | MR::CutByProjectionSettings::direction |
| | direction of projection (in mesh space)
|
| const AffineXf3f * | MR::CutByProjectionSettings::cont2mesh { nullptr } |
| | if set - used to transform contours form its local space to mesh local space
|
| Vector3f | MR::CurvePoint::pos |
| | position on the curve
|
| Vector3f | MR::CurvePoint::dir |
| | direction along the curve
|
| Vector3f | MR::CurvePoint::snorm |
| | the normal of the surface where the curve is located
|
| std::function< CurvePoint(float)> | MR::CurveFunc::func |
| | curve given as a function: position along curve -> point
|
| float | MR::CurveFunc::totalLength = 1.0f |
| | total length of the given curve
|
| Line3< T > | MR::Cylinder3< T >::mainAxis |
| T | MR::Cylinder3< T >::radius = 0 |
| T | MR::Cylinder3< T >::length = 0 |
| T | MR::Cylinder3Approximation< T >::BestHemisphereStoredData::error = std::numeric_limits<T>::max() |
| T | MR::Cylinder3Approximation< T >::BestHemisphereStoredData::rootSquare = std::numeric_limits<T>::max() |
| Eigen::Vector< T, 3 > | MR::Cylinder3Approximation< T >::BestHemisphereStoredData::W |
| Eigen::Vector< T, 3 > | MR::Cylinder3Approximation< T >::BestHemisphereStoredData::PC |
| Vector3f | MR::Dipole::pos |
| float | MR::Dipole::area = 0 |
| Vector3f | MR::Dipole::dirArea |
| float | MR::Dipole::rr = 0 |
| std::filesystem::directory_iterator | MR::DirectoryIterator::it |
| std::error_code & | MR::DirectoryIterator::ec |
| std::filesystem::path | MR::Directory::dir |
| std::error_code & | MR::Directory::ec |
| std::filesystem::recursive_directory_iterator | MR::DirectoryRecursiveIterator::it |
| std::error_code & | MR::DirectoryRecursiveIterator::ec |
| std::filesystem::path | MR::DirectoryRecursive::dir |
| std::error_code & | MR::DirectoryRecursive::ec |
| float | MR::DistanceToMeshOptions::minDistSq { 0 } |
| | minimum squared distance from a point to mesh to be computed precisely
|
| float | MR::DistanceToMeshOptions::maxDistSq { FLT_MAX } |
| | maximum squared distance from a point to mesh to be computed precisely
|
| bool | MR::DistanceToMeshOptions::nullOutsideMinMax = true |
| float | MR::DistanceToMeshOptions::windingNumberThreshold = 0.5f |
| float | MR::DistanceToMeshOptions::windingNumberBeta = 2 |
| SignDetectionMode | MR::SignedDistanceToMeshOptions::signMode { SignDetectionMode::ProjectionNormal } |
| | the method to compute distance sign
|
| MeshTopology | MR::EdgeLengthMesh::topology |
| UndirectedEdgeScalars | MR::EdgeLengthMesh::edgeLengths |
| VertId | MR::TerminalVertex::v |
| float | MR::TerminalVertex::metric = 0 |
| EdgeId | MR::VertPathInfo::back |
| | edge from this vertex to its predecessor in the forest
|
| float | MR::VertPathInfo::metric = FLT_MAX |
| | best summed metric to reach this vertex
|
| VertId | MR::EdgePathsBuilderT< MetricToPenalty >::ReachedVert::v |
| EdgeId | MR::EdgePathsBuilderT< MetricToPenalty >::ReachedVert::backward |
| | edge from this vertex to its predecessor in the forest (if this vertex is not start)
|
| float | MR::EdgePathsBuilderT< MetricToPenalty >::ReachedVert::penalty = FLT_MAX |
| float | MR::EdgePathsBuilderT< MetricToPenalty >::ReachedVert::metric = FLT_MAX |
| | summed metric to reach this vertex
|
| MR_NO_UNIQUE_ADDRESS MetricToPenalty | MR::EdgePathsBuilderT< MetricToPenalty >::metricToPenalty_ |
| VertId | MR::EdgePathsBuilderT< MetricToPenalty >::CandidateVert::v |
| float | MR::EdgePathsBuilderT< MetricToPenalty >::CandidateVert::penalty = FLT_MAX |
| | best penalty to reach this vertex
|
| const VertCoords * | MR::MetricToAStarPenalty::points = nullptr |
| Vector3f | MR::MetricToAStarPenalty::target |
| EdgeId | MR::EdgePoint::e |
| SegmPointf | MR::EdgePoint::a |
| | a in [0,1], a=0 => point is in org( e ), a=1 => point is in dest( e )
|
| EdgePoint | MR::EdgePointPair::a |
| EdgePoint | MR::EdgePointPair::b |
| EdgeId | MR::EdgeSegment::e |
| | id of the edge
|
| SegmPointf | MR::EdgeSegment::a { 0.0f } |
| | start of the segment
|
| SegmPointf | MR::EdgeSegment::b { 1.0f } |
| | end of the segment
|
| float | MR::EmbeddedStructureParameters::fillAngle = 0.0f |
| | angle of fill cone (mound)
|
| float | MR::EmbeddedStructureParameters::cutAngle = 0.0f |
| | angle of cut cone (pit)
|
| float | MR::EmbeddedStructureParameters::minAnglePrecision = PI_F / 9.0f |
| | min angle precision of basin expansion
|
| FaceBitSet * | MR::EmbeddedStructureParameters::outStructFaces { nullptr } |
| | optional out new faces of embedded structure
|
| FaceBitSet * | MR::EmbeddedStructureParameters::outFillFaces { nullptr } |
| | optional out new faces of fill part
|
| FaceBitSet * | MR::EmbeddedStructureParameters::outCutFaces { nullptr } |
| | optional out new faces of cut part
|
| FaceMap * | MR::EmbeddedStructureParameters::new2oldFaces { nullptr } |
| | optional out map new terrain faces to old terrain faces
|
| Type | MR::EndMillCutter::type = Type::Flat |
| float | MR::EndMillCutter::cornerRadius = 0.f |
| | (bull nose) corner radius
|
| float | MR::EndMillCutter::cuttingAngle = 0.f |
| | (chamfer) cutting angle
|
| float | MR::EndMillCutter::endDiameter = 0.f |
| | (chamfer) end diameter
|
| float | MR::EndMillTool::length = 1.f |
| | overall tool length
|
| float | MR::EndMillTool::diameter = 0.1f |
| | tool diameter
|
| EndMillCutter | MR::EndMillTool::cutter |
| | cutter
|
| OutputFaceValues | MR::FaceDistancesSettings::out = OutputFaceValues::Distances |
| float * | MR::FaceDistancesSettings::maxDist = nullptr |
| | optional output of the maximal distance to the most distant face
|
| ProgressCallback | MR::FaceDistancesSettings::progress |
| | for progress reporting and cancellation
|
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Point >::name = "Point" |
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Line >::name = "Line" |
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Plane >::name = "Plane" |
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Circle >::name = "Circle" |
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Sphere >::name = "Sphere" |
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Cylinder >::name = "Cylinder" |
| static constexpr std::string_view | MR::ObjKindTraits< FeaturesObjectKind::Cone >::name = "Cone" |
| std::string | MR::FeatureObjectSharedProperty::propertyName |
| FeaturePropertyKind | MR::FeatureObjectSharedProperty::kind |
| std::function< FeaturesPropertyTypesVariant(const FeatureObject *objectToInvoke, ViewportId id)> | MR::FeatureObjectSharedProperty::getter |
| | due to getAllSharedProperties in FeatureObject returns static vector, we need externaly setup object to invoke setter ad getter.
|
| std::function< void(const FeaturesPropertyTypesVariant &, FeatureObject *objectToInvoke, ViewportId id)> | MR::FeatureObjectSharedProperty::setter |
| Vector3f | MR::FeatureObjectProjectPointResult::point |
| std::optional< Vector3f > | MR::FeatureObjectProjectPointResult::normal |
| | Subfeatures |
| | DetailsOnNameTag |
| | _count |
| | If true, show additional details on the name tag, such as point coordinates. Not all features use this.
|
| ViewportMask | MR::FeatureObject::subfeatureVisibility_ = ViewportMask::all() |
| ViewportMask | MR::FeatureObject::detailsOnNameTag_ = ViewportMask::all() |
| ViewportProperty< Matrix3f > | MR::FeatureObject::r_ |
| ViewportProperty< Matrix3f > | MR::FeatureObject::s_ |
| | rotation
|
| std::array< ViewportProperty< Color >, 2 > | MR::FeatureObject::decorationsColor_ |
| | scale
|
| float | MR::FeatureObject::pointSize_ = 10 |
| | Those apply only to some features:
|
| float | MR::FeatureObject::lineWidth_ = 2 |
| float | MR::FeatureObject::subPointSize_ = 6 |
| | Point size and line width, for subfeatures rather than primary rendering.
|
| float | MR::FeatureObject::subLineWidth_ = 1 |
| float | MR::FeatureObject::mainFeatureAlpha_ = 1 |
| | Per-component alpha multipliers. The global alpha is multiplied by thise.
|
| float | MR::FeatureObject::subAlphaPoints_ = 1 |
| float | MR::FeatureObject::subAlphaLines_ = 1 |
| float | MR::FeatureObject::subAlphaMesh_ = 0.5f |
| float | MR::RefineParameters::distanceLimit { 0.1f } |
| | Maximum distance from the source model to the feature.
|
| float | MR::RefineParameters::normalTolerance { 30.f } |
| | Maximum angle between the source model's normal and the feature's normal.
|
| const FaceBitSet * | MR::RefineParameters::faceRegion {} |
| | (for meshes only) Reference faces used for filtering intermediate results that are too far from it
|
| const VertBitSet * | MR::RefineParameters::vertRegion {} |
| | (for meshes only) Reference vertices used for filtering intermediate results that are too far from it
|
| int | MR::RefineParameters::maxIterations { 10 } |
| | Maximum amount of iterations performed until a stable set of points is found.
|
| ProgressCallback | MR::RefineParameters::callback |
| | Progress callback.
|
| Vector3f | MR::Features::Primitives::Plane::center |
| Vector3f | MR::Features::Primitives::Plane::normal = Vector3f( 1, 0, 0 ) |
| | This must be normalized. The sign doesn't matter.
|
| Vector3f | MR::Features::Primitives::ConeSegment::referencePoint |
| | Some point on the axis, but not necessarily the true center point. Use centerPoint() for that.
|
| Vector3f | MR::Features::Primitives::ConeSegment::dir |
| | The axis direction. Must be normalized.
|
| float | MR::Features::Primitives::ConeSegment::positiveSideRadius = 0 |
| | Cap radius in the dir direction.
|
| float | MR::Features::Primitives::ConeSegment::negativeSideRadius = 0 |
| | Cap radius in the direction opposite to dir.
|
| float | MR::Features::Primitives::ConeSegment::positiveLength = 0 |
| | Distance from the center to the cap in the dir direction.
|
| float | MR::Features::Primitives::ConeSegment::negativeLength = 0 |
| | Distance from the center to the cap in the direction opposite to dir.
|
| bool | MR::Features::Primitives::ConeSegment::hollow = false |
| | If true, the cone has no caps and no volume, and all distances (to the conical surface, that is) are positive.
|
| Status | MR::Features::MeasureResult::BasicPart::status = Status::notImplemented |
| float | MR::Features::MeasureResult::Distance::distance = 0 |
| | This is a separate field because it can be negative.
|
| Vector3f | MR::Features::MeasureResult::Distance::closestPointA |
| Vector3f | MR::Features::MeasureResult::Distance::closestPointB |
| Distance | MR::Features::MeasureResult::distance |
| | Exact distance.
|
| Distance | MR::Features::MeasureResult::centerDistance |
| Vector3f | MR::Features::MeasureResult::Angle::pointA |
| Vector3f | MR::Features::MeasureResult::Angle::pointB |
| Vector3f | MR::Features::MeasureResult::Angle::dirA |
| Vector3f | MR::Features::MeasureResult::Angle::dirB |
| | Normalized.
|
| bool | MR::Features::MeasureResult::Angle::isSurfaceNormalA = false |
| | Whether dir{A,B} is a surface normal or a line direction.
|
| bool | MR::Features::MeasureResult::Angle::isSurfaceNormalB = false |
| Angle | MR::Features::MeasureResult::angle |
| std::vector< Primitives::Variant > | MR::Features::MeasureResult::intersections |
| | The primitives obtained from intersecting those two.
|
| UndirectedEdgeBitSet * | MR::SubdivideFillingSettings::notFlippable = nullptr |
| | in triangulateOnly = false mode, edges specified by this bit-set will never be flipped, but they can be split so it is updated during the operation
|
| float | MR::SubdivideFillingSettings::maxEdgeLen = 0 |
| | Subdivision is stopped when all edges inside or on the boundary of the region are not longer than this value.
|
| int | MR::SubdivideFillingSettings::maxEdgeSplits = 1000 |
| | Maximum number of edge splits allowed during subdivision.
|
| float | MR::SubdivideFillingSettings::maxAngleChangeAfterFlip = 30 * PI_F / 180.0f |
| | Improves local mesh triangulation by doing edge flips if it does not change dihedral angle more than on this value (in radians)
|
| std::function< bool(EdgeId e)> | MR::SubdivideFillingSettings::beforeEdgeSplit |
| | (If this is set) this function is called in subdivision each time edge (e) is going to split, if it returns false then this split will be skipped
|
| std::function< void(EdgeId e1, EdgeId e)> | MR::SubdivideFillingSettings::onEdgeSplit |
| | (If this is set) this function is called in subdivision each time edge (e) is split into (e1->e), but before the ring is made Delone
|
| bool | MR::SmoothFillingSettings::naturalSmooth = false |
| | Additionally smooth 3 layers of vertices near hole boundary both inside and outside of the hole.
|
| EdgeWeights | MR::SmoothFillingSettings::edgeWeights = EdgeWeights::Cotan |
| | edge weighting scheme for smoothCurvature mode
|
| VertexMass | MR::SmoothFillingSettings::vmass = VertexMass::Unit |
| | vertex mass scheme for smoothCurvature mode
|
| VertUVCoords * | MR::OutAttributesFillingSettings::uvCoords = {} |
| | optional uv-coordinates of vertices; if provided then elements corresponding to new vertices will be added there
|
| VertColors * | MR::OutAttributesFillingSettings::colorMap = {} |
| | optional colors of vertices; if provided then elements corresponding to new vertices will be added there
|
| FaceColors * | MR::OutAttributesFillingSettings::faceColors = {} |
| | optional colors of faces; if provided then elements corresponding to new faces will be added there
|
| FillHoleParams | MR::FillHoleNicelySettings::triangulateParams |
| | how to triangulate the hole, must be specified by the user
|
| bool | MR::FillHoleNicelySettings::triangulateOnly = false |
| | If false then additional vertices are created inside the patch for best mesh quality.
|
| SubdivideFillingSettings | MR::FillHoleNicelySettings::subdivideSettings |
| | if triangulateOnly is false - this settings are used to subdivide new filling
|
| bool | MR::FillHoleNicelySettings::smoothCurvature = true |
| | Whether to make patch over the hole smooth both inside and on its boundary with existed surface.
|
| SmoothFillingSettings | MR::FillHoleNicelySettings::smoothSeettings |
| | if smoothCurvature is true and `triangulateOnly is false - these settings are used to smooth new filling
|
| OutAttributesFillingSettings | MR::FillHoleNicelySettings::outAttributes |
| | structure with optional output attributes
|
| StitchHolesParams | MR::StitchHolesNicelySettings::triangulateParams |
| | how to triangulate the cylinder between holes, must be specified by the user
|
| bool | MR::StitchHolesNicelySettings::triangulateOnly = false |
| | If false then additional vertices are created inside the patch for best mesh quality.
|
| SubdivideFillingSettings | MR::StitchHolesNicelySettings::subdivideSettings |
| | if triangulateOnly is false - this settings are used to subdivide new filling
|
| bool | MR::StitchHolesNicelySettings::smoothCurvature = true |
| | Whether to make patch over the hole smooth both inside and on its boundary with existed surface.
|
| SmoothFillingSettings | MR::StitchHolesNicelySettings::smoothSeettings |
| | if smoothCurvature is true and `triangulateOnly is false - these settings are used to smooth new filling
|
| OutAttributesFillingSettings | MR::StitchHolesNicelySettings::outAttributes |
| | structure with optional output attributes
|
| bool | MR::SelfIntersections::Settings::touchIsIntersection = true |
| | If true then count touching faces as self-intersections.
|
| Method | MR::SelfIntersections::Settings::method = Method::Relax |
| int | MR::SelfIntersections::Settings::relaxIterations = 5 |
| | Maximum relax iterations.
|
| int | MR::SelfIntersections::Settings::maxExpand = 3 |
| | Maximum expand count (edge steps from self-intersecting faces), should be > 0.
|
| float | MR::SelfIntersections::Settings::subdivideEdgeLen = 0.0f |
| ProgressCallback | MR::SelfIntersections::Settings::callback = {} |
| | Callback function.
|
| std::vector< Vec > | MR::GcodeProcessor::BaseAction< Vec >::path |
| | tool movement parsed from gcode
|
| std::string | MR::GcodeProcessor::BaseAction< Vec >::warning |
| | parser warning
|
| BaseAction3f | MR::GcodeProcessor::MoveAction::action |
| std::vector< Vector3f > | MR::GcodeProcessor::MoveAction::toolDirection |
| bool | MR::GcodeProcessor::MoveAction::idle = true |
| | tool direction for each point from action.path
|
| float | MR::GcodeProcessor::MoveAction::feedrate = 100.f |
| char | MR::GcodeProcessor::Command::key |
| float | MR::GcodeProcessor::Command::value |
| | in lowercase
|
| VertId | MR::Graph::EndVertices::v0 |
| VertId | MR::Graph::EndVertices::v1 |
| const VertCoords * | MR::ModelPointsData::points { nullptr } |
| | all points of model
|
| const VertBitSet * | MR::ModelPointsData::validPoints { nullptr } |
| | bitset of valid points
|
| const AffineXf3f * | MR::ModelPointsData::xf { nullptr } |
| | model world xf
|
| ObjId | MR::ModelPointsData::fakeObjId {} |
| | if present this value will override ObjId in result ObjVertId
|
| ObjId | MR::ObjVertId::objId |
| VertId | MR::ObjVertId::vId |
| Vector2i | MR::GridSettings::dim |
| BMap< VertId, size_t > | MR::GridSettings::vertIds |
| BMap< UndirectedEdgeId, size_t > | MR::GridSettings::uedgeIds |
| BMap< FaceId, size_t > | MR::GridSettings::faceIds |
| Vector3f | MR::ICPPairData::srcPoint |
| | coordinates of the source point after transforming in world space
|
| Vector3f | MR::ICPPairData::srcNorm |
| | normal in source point after transforming in world space
|
| Vector3f | MR::ICPPairData::tgtPoint |
| | coordinates of the closest point on target after transforming in world space
|
| Vector3f | MR::ICPPairData::tgtNorm |
| | normal in the target point after transforming in world space
|
| float | MR::ICPPairData::distSq = 0.f |
| | squared distance between source and target points
|
| float | MR::ICPPairData::weight = 1.f |
| | weight of the pair (to prioritize over other pairs)
|
| VertId | MR::PointPair::srcVertId |
| | id of the source point
|
| VertId | MR::PointPair::tgtCloseVert |
| float | MR::PointPair::normalsAngleCos = 1.f |
| | cosine between normals in source and target points
|
| bool | MR::PointPair::tgtOnBd = false |
| | true if if the closest point on target is located on the boundary (only for meshes)
|
| BitSet | MR::IPointPairs::active |
| | whether corresponding pair from vec must be considered during minimization
|
| std::vector< PointPair > | MR::PointPairs::vec |
| | vector of all point pairs both active and not
|
| int | MR::NumSum::num = 0 |
| double | MR::NumSum::sum = 0 |
| ICPMethod | MR::ICPProperties::method = ICPMethod::PointToPlane |
| | The method how to update transformation from point pairs, see description of each option in ICPMethod.
|
| float | MR::ICPProperties::p2plAngleLimit = PI_F / 6.0f |
| float | MR::ICPProperties::p2plScaleLimit = 2 |
| | [radians]
|
| float | MR::ICPProperties::cosThreshold = 0.7f |
| float | MR::ICPProperties::distThresholdSq = 1.f |
| | in [-1,1]
|
| float | MR::ICPProperties::farDistFactor = 3.f |
| | [distance^2]
|
| ICPMode | MR::ICPProperties::icpMode = ICPMode::AnyRigidXf |
| | dimensionless
|
| Vector3f | MR::ICPProperties::fixedRotationAxis |
| | Additional parameter for ICPMode::OrthogonalAxis and ICPMode::FixedAxis transformation groups.
|
| int | MR::ICPProperties::iterLimit = 10 |
| int | MR::ICPProperties::badIterStopCount = 3 |
| float | MR::ICPProperties::exitVal = 0 |
| bool | MR::ICPProperties::mutualClosest = false |
| | [distance]
|
| std::vector< Color > | MR::Image::pixels |
| Vector2i | MR::Image::resolution |
| int | MR::ImproveSamplingSettings::numIters = 1 |
| | the number of algorithm iterations to perform
|
| int | MR::ImproveSamplingSettings::minPointsInSample = 1 |
| VertMap * | MR::ImproveSamplingSettings::pt2sm = nullptr |
| | optional output: mapping from input point id to sample id
|
| PointCloud * | MR::ImproveSamplingSettings::cloudOfSamples = nullptr |
| | optional output: new cloud containing averaged points and normals for each sample
|
| Vector< int, VertId > * | MR::ImproveSamplingSettings::ptsInSm = nullptr |
| | optional output: the number of points in each sample
|
| const VertColors * | MR::ImproveSamplingSettings::ptColors = nullptr |
| | optional input: colors of input points
|
| VertColors * | MR::ImproveSamplingSettings::smColors = nullptr |
| | optional output: averaged colors of samples
|
| ProgressCallback | MR::ImproveSamplingSettings::progress |
| | output progress status and receive cancel signal
|
| Side | MR::FindInnerShellSettings::side = Side::Negative |
| | specifies which side of shell is of interest: negative or positive relative to mesh normals
|
| float | MR::FindInnerShellSettings::maxDistSq = FLT_MAX |
| | specifies maximum squared distance from shell parts of interest to source mesh
|
| bool | MR::FindInnerShellSettings::useWindingNumber = false |
| | if true, a slower algorithm is activated that is more robust in the presence of self-intersections on mesh
|
| float | MR::FindInnerShellSettings::windingNumberThreshold = 0.25f |
| int | MR::FindInnerShellSettings::minVertsInComp = 10 |
| bool | MR::ShellVertexInfo::inRange = false |
| | true when shell vertex is within settings.maxDist from source mesh
|
| bool | MR::ShellVertexInfo::projOnBd = false |
| | shell vertex projects on source mesh boundary (never true for winding rule mode)
|
| bool | MR::ShellVertexInfo::rightSide = false |
| | whether shell vertex is on requested side of source mesh
|
| const Matrix4f & | MR::BaseRenderParams::viewMatrix |
| const Matrix4f & | MR::BaseRenderParams::projMatrix |
| ViewportId | MR::BaseRenderParams::viewportId |
| Vector4i | MR::BaseRenderParams::viewport |
| | id of the viewport
|
| const Matrix4f & | MR::ModelBaseRenderParams::modelMatrix |
| const Plane3f & | MR::ModelBaseRenderParams::clipPlane |
| DepthFunction | MR::ModelBaseRenderParams::depthFunction = DepthFunction::Default |
| | viewport clip plane (it is not applied while object does not have clipping flag set)
|
| const Matrix4f * | MR::ModelRenderParams::normMatrixPtr { nullptr } |
| Vector3f | MR::ModelRenderParams::lightPos |
| | normal matrix, only necessary for triangles rendering
|
| TransparencyMode | MR::ModelRenderParams::transparencyMode |
| | position of light source
|
| RenderModelPassMask | MR::ModelRenderParams::passMask = RenderModelPassMask::All |
| | determines how to handle transparent models
|
| float | MR::BasicUiRenderTask::renderTaskDepth = 0 |
| | The tasks are sorted by this depth, descending (larger depth = further away).
|
| InteractionMask | MR::BasicUiRenderTask::BackwardPassParams::consumedInteractions {} |
| UiTaskList * | MR::UiRenderParams::tasks = nullptr |
| | Those are Z-sorted and then executed.
|
| constexpr float | MR::cQuietNan = std::numeric_limits<float>::quiet_NaN() |
| constexpr int | MR::cQuietNanBits = std::bit_cast< int >( cQuietNan ) |
| MeshTriPoint | MR::Laplacian::Attractor::p |
| Vector3d | MR::Laplacian::Attractor::target |
| double | MR::Laplacian::Attractor::weight = 1 |
| Vector3d | MR::Laplacian::Equation::rhs |
| double | MR::Laplacian::Equation::centerCoeff = 0 |
| | equation right hand side
|
| int | MR::Laplacian::Equation::firstElem = 0 |
| | coefficient on matrix diagonal
|
| double | MR::Laplacian::Element::coeff = 0 |
| VertId | MR::Laplacian::Element::neiVert |
| V | MR::Line< V >::p |
| V | MR::Line< V >::d |
| V | MR::LineSegm< V >::a |
| V | MR::LineSegm< V >::b |
| VertColors * | MR::LinesLoadSettings::colors = nullptr |
| | optional load artifact: per-vertex color map
|
| ProgressCallback | MR::LinesLoadSettings::callback |
| | callback for set progress and stop process
|
| bool | MR::LinesLoadSettings::telemetrySignal = true |
| | permit telemetry signal about loading
|
| MeshTexture | MR::LoadedMeshData::texture |
| AffineXf3f | MR::LoadedMeshData::xf |
| int | MR::LoadedMeshData::skippedFaceCount = 0 |
| int | MR::LoadedMeshData::duplicatedVertexCount = 0 |
| std::shared_ptr< ObjectT > | MR::LoadedObjectT< ObjectT >::obj |
| std::string | MR::LoadedObjectT< ObjectT >::warnings |
| std::optional< LengthUnit > | MR::LoadedObjectT< ObjectT >::lengthUnit |
| | either empty or ends with '
'
|
| std::vector< ObjectPtr > | MR::LoadedObjects::objs |
| std::string | MR::LoadedObjects::warnings |
| std::optional< LengthUnit > | MR::LoadedObjects::lengthUnit |
| | either empty or ends with '
'
|
| VertId | MR::FanRecord::border |
| std::uint32_t | MR::FanRecord::firstNei |
| | the position of first neigbor in LocalTriangulations::neighbours
|
| VertId | MR::FanRecordWithCenter::center |
| | center point in the fan
|
| std::vector< VertId > | MR::SomeLocalTriangulations::neighbors |
| std::vector< FanRecordWithCenter > | MR::SomeLocalTriangulations::fanRecords |
| VertId | MR::SomeLocalTriangulations::maxCenterId |
| Buffer< VertId > | MR::AllLocalTriangulations::neighbors |
| Vector< FanRecord, VertId > | MR::AllLocalTriangulations::fanRecords |
| float | MR::SphereParams::radius = 1 |
| int | MR::SphereParams::numMeshVertices = 100 |
| std::variant< Dense, Hash > | MR::MapOrHashMap< K, V >::var |
| | default construction will select dense map
|
| Contour3f | MR::MarkedContour3f::contour |
| BitSet | MR::MarkedContour3f::marks |
| | indices of control (marked) points
|
| float | MR::SplineSettings::samplingStep = 1 |
| float | MR::SplineSettings::controlStability = 1 |
| | a positive value, the more the value the closer resulting spline will be to given control points
|
| int | MR::SplineSettings::iterations = 1 |
| Contour3f * | MR::SplineSettings::normals = nullptr |
| | optional parameter with the normals of input points that will be resampled to become normals of output points
|
| bool | MR::SplineSettings::normalsAffectShape = false |
| | if true and normals are provided, then the curve at marked points will try to be orthogonal to given normal there
|
| Vector2< T > | MR::Matrix2< T >::x { 1, 0 } |
| | rows, identity matrix by default
|
| Vector2< T > | MR::Matrix2< T >::y { 0, 1 } |
| static constexpr Matrix2 static rotation(T angle) noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix2 static rotation(const Vector2< T > &from, const Vector2< T > &to) noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix | MR::Matrix2< T >::fromRows )(const Vector2< T > &x, const Vector2< T > &y) noexcept |
| | creates matrix representing rotation around origin on given angle
|
| Vector3< T > | MR::Matrix3< T >::x { 1, 0, 0 } |
| | rows, identity matrix by default
|
| Vector3< T > | MR::Matrix3< T >::y { 0, 1, 0 } |
| Vector3< T > | MR::Matrix3< T >::z { 0, 0, 1 } |
| static constexpr Matrix3 static rotation(const Vector3< T > &axis, T angle) noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix3 static rotation(const Vector3< T > &from, const Vector3< T > &to) noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix3 static rotationFromEuler(const Vector3< T > &eulerAngles) noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix3 static approximateLinearRotationMatrixFromEuler(const Vector3< T > &eulerAngles) noexcept MR_REQUIRES_IF_SUPPORTED(std constexpr Matrix | MR::Matrix3< T >::fromRows )(const Vector3< T > &x, const Vector3< T > &y, const Vector3< T > &z) noexcept |
| | creates matrix representing rotation around given axis on given angle
|
| Matrix3 | MR::Matrix3< T >::QR::q |
| Matrix3 | MR::Matrix3< T >::QR::r |
| Vector4< T > | MR::Matrix4< T >::x { 1, 0, 0, 0 } |
| | rows, identity matrix by default
|
| Vector4< T > | MR::Matrix4< T >::y { 0, 1, 0, 0 } |
| Vector4< T > | MR::Matrix4< T >::z { 0, 0, 1, 0 } |
| Vector4< T > | MR::Matrix4< T >::w { 0, 0, 0, 1 } |
| VertUVCoords * | MR::MeshAttributesToUpdate::uvCoords = nullptr |
| VertColors * | MR::MeshAttributesToUpdate::colorMap = nullptr |
| TexturePerFace * | MR::MeshAttributesToUpdate::texturePerFace = nullptr |
| FaceColors * | MR::MeshAttributesToUpdate::faceColors = nullptr |
| Mesh | MR::TransformedMesh::mesh |
| AffineXf3f | MR::TransformedMesh::xf |
| VertId | MR::MeshBuilder::VertDuplication::srcVert |
| VertId | MR::MeshBuilder::VertDuplication::dupVert |
| | original vertex before duplication
|
| FaceMap | MR::MeshBuilder::MeshPiece::fmap |
| VertMap | MR::MeshBuilder::MeshPiece::vmap |
| | face of part -> face of whole mesh
|
| MeshTopology | MR::MeshBuilder::MeshPiece::topology |
| | vert of part -> vert of whole mesh
|
| FaceBitSet | MR::MeshBuilder::MeshPiece::rem |
| float | MR::MeshBuilder::UniteCloseParams::closeDist = 0.0f |
| | < vertices located closer to each other than
|
| bool | MR::MeshBuilder::UniteCloseParams::uniteOnlyBd = true |
| | if true, only vertices from this region can be affected
|
| VertBitSet * | MR::MeshBuilder::UniteCloseParams::region = nullptr |
| | if true - try to duplicates non-manifold vertices instead of removing faces
|
| bool | MR::MeshBuilder::UniteCloseParams::duplicateNonManifold = false |
| | is the mapping of vertices: before -> after
|
| VertMap * | MR::MeshBuilder::UniteCloseParams::optionalVertOldToNew = nullptr |
| | this can be used to map attributes to duplicated vertices
|
| std::vector< MeshBuilder::VertDuplication > * | MR::MeshBuilder::UniteCloseParams::optionalDuplications = nullptr |
| ThreeVertIds | MR::MeshBuilder::Triangle::v |
| FaceId | MR::MeshBuilder::Triangle::f |
| FaceBitSet * | MR::MeshBuilder::BuildSettings::region = nullptr |
| | if region is given then on input it contains the faces to be added, and on output the faces failed to be added
|
| int | MR::MeshBuilder::BuildSettings::shiftFaceId = 0 |
| | this value to be added to every faceId before its inclusion in the topology
|
| bool | MR::MeshBuilder::BuildSettings::allowNonManifoldEdge = true |
| | whether to permit non-manifold edges in the resulting topology
|
| int * | MR::MeshBuilder::BuildSettings::skippedFaceCount = nullptr |
| | optional output: counter of skipped faces during mesh creation
|
| int | MR::MeshBuilder::VertSpan::firstVertex = 0 |
| int | MR::MeshBuilder::VertSpan::lastVertex = 0 |
| float | MR::DivideMeshWithPlaneParams::eps { 0.0f } |
| | if existing vertex is within eps distance from the plane, then move the vertex not introducing new ones
|
| bool | MR::DivideMeshWithPlaneParams::fillCut { true } |
| | if set - function tries to fill cut after dividing (this operation might fail leading to "params.errors")
|
| bool | MR::DivideMeshWithPlaneParams::subdivideFilling { false } |
| | if set and filled - function subdivides filling after cut
|
| ObjectMeshData * | MR::DivideMeshWithPlaneParams::otherPart { nullptr } |
| | optional output other part of dividing (expected to be empty)
|
| std::vector< std::string > * | MR::DivideMeshWithPlaneParams::errors { nullptr } |
| | optional output list of errors that could possibly happen during 'divideMeshWithPlane' function call
|
| FaceBitSet * | MR::MakeDegenerateBandAroundRegionParams::outNewFaces = nullptr |
| | (optional) output newly generated faces
|
| UndirectedEdgeBitSet * | MR::MakeDegenerateBandAroundRegionParams::outExtrudedEdges = nullptr |
| | (optional) output edges orthogonal to the boundary
|
| float * | MR::MakeDegenerateBandAroundRegionParams::maxEdgeLength = nullptr |
| | (optional) return legth of the longest edges from the boundary of the region
|
| VertHashMap * | MR::MakeDegenerateBandAroundRegionParams::new2OldMap = nullptr |
| | (optional) map of new vertices to old ones
|
| constexpr NoInit | MR::noInit |
| template<typename T> |
| struct MRMESH_CLASS | MR::NoDefInit |
| class MRMESH_CLASS | MR::EdgeTag |
| class MRMESH_CLASS | MR::UndirectedEdgeTag |
| class MRMESH_CLASS | MR::FaceTag |
| class MRMESH_CLASS | MR::VertTag |
| class MRMESH_CLASS | MR::PixelTag |
| class MRMESH_CLASS | MR::VoxelTag |
| class MRMESH_CLASS | MR::RegionTag |
| class MRMESH_CLASS | MR::NodeTag |
| class MRMESH_CLASS | MR::ObjTag |
| class MRMESH_CLASS | MR::TextureTag |
| class MRMESH_CLASS | MR::GraphVertTag |
| class MRMESH_CLASS | MR::GraphEdgeTag |
| template<> |
| class MRMESH_CLASS Id< GraphEdgeTag > class MR::EdgeId | MR::Id< EdgeTag > |
| template<> |
| class MR::VoxelId | MR::Id< VoxelTag > |
| class MRMESH_CLASS | MR::I = size_t> class MRMESH_CLASS Buffer |
| class MRMESH_CLASS | MR::BitSet |
| template<typename T> |
| | MR::struct |
| MRMESH_CLASS | MR::Vector2 |
| MRMESH_CLASS | MR::Vector2b |
| MRMESH_CLASS | MR::Vector3 |
| MRMESH_CLASS | MR::Vector3b |
| | MR::Vector4 |
| | MR::Vector4b |
| | MR::Matrix2 |
| | MR::Matrix2b |
| | MR::Matrix3 |
| | MR::Matrix3b |
| | MR::Matrix4 |
| | MR::Matrix4b |
| | MR::SymMatrix2 |
| | MR::SymMatrix2b |
| | MR::SymMatrix3 |
| | MR::SymMatrix3b |
| | MR::SymMatrix4 |
| | MR::SymMatrix4b |
| | MR::AffineXf |
| | MR::AffineXf2f |
| | MR::RigidXf3 |
| | MR::RigidXf3f |
| | MR::RigidScaleXf3 |
| | MR::RigidScaleXf3f |
| | MR::Sphere |
| | MR::Sphere2f |
| | MR::Line |
| | MR::Line2f |
| | MR::LineSegm |
| | MR::LineSegm2f |
| | MR::Parabola |
| | MR::Parabolaf |
| | MR::BestFitParabola |
| | MR::BestFitParabolaf |
| | MR::Cylinder3 |
| | MR::Cylinder3f |
| | MR::Cone3 |
| | MR::Cone3f |
| | MR::Plane3 |
| | MR::Plane3f |
| | MR::Box |
| | MR::Box1i |
| | MR::QuadraticForm |
| | MR::QuadraticForm2f |
| | MR::Quaternion |
| | MR::Quaternionf |
| | MR::SegmPoint |
| | MR::SegmPointf |
| | MR::TriPoint |
| | MR::TriPointf |
| struct MRMESH_CLASS | MR::Dipole |
| struct MRMESH_CLASS | MR::Hash = phmap::priv::hash_default_hash<T> |
| struct MRMESH_CLASS | MR::Eq |
| class MRMESH_CLASS | MR::MeshTopology |
| struct MRMESH_CLASS | MR::Mesh |
| struct MRMESH_CLASS | MR::EdgeLengthMesh |
| class MRMESH_CLASS | MR::MeshOrPoints |
| struct MRMESH_CLASS | MR::PointCloud |
| struct MRMESH_CLASS | MR::PointCloudPart |
| class MRMESH_CLASS | MR::AABBTree |
| class MRMESH_CLASS | MR::AABBTreePoints |
| class MRMESH_CLASS | MR::AABBTreeObjects |
| struct MRMESH_CLASS | MR::CloudPartMapping |
| struct MRMESH_CLASS | MR::PartMapping |
| | MR::Polyline |
| | MR::Polyline2 |
| | MR::AABBTreePolyline |
| | MR::AABBTreePolyline2 |
| | MR::PolylineProjectionWithOffsetResult |
| | MR::Polyline2ProjectionWithOffsetResult |
| class MRMESH_CLASS | MR::ChangeSceneAction |
| template<typename...> |
| constexpr bool | MR::dependent_false = false |
| std::optional< Edges > * | MR::MeshLoadSettings::edges = nullptr |
| | optional load artifact: polyline edges
|
| VertColors * | MR::MeshLoadSettings::colors = nullptr |
| | optional load artifact: per-vertex color map
|
| FaceColors * | MR::MeshLoadSettings::faceColors = nullptr |
| | optional load artifact: per-face color map
|
| VertUVCoords * | MR::MeshLoadSettings::uvCoords = nullptr |
| | optional load artifact: per-vertex uv-coordinates
|
| VertNormals * | MR::MeshLoadSettings::normals = nullptr |
| | optional load artifact: per-vertex normals
|
| MeshTexture * | MR::MeshLoadSettings::texture = nullptr |
| | optional load artifact: texture image
|
| int * | MR::MeshLoadSettings::skippedFaceCount = nullptr |
| | optional output: counter of skipped faces during mesh creation
|
| int * | MR::MeshLoadSettings::duplicatedVertexCount = nullptr |
| | optional output: counter of duplicated vertices (that created for resolve non-manifold geometry)
|
| AffineXf3f * | MR::MeshLoadSettings::xf = nullptr |
| | optional output: transform for the loaded mesh to improve precision of vertex coordinates
|
| ProgressCallback | MR::MeshLoadSettings::callback |
| | callback for set progress and stop process
|
| bool | MR::MeshLoadSettings::telemetrySignal = true |
| | permit telemetry signal about loading
|
| Vector3f | MR::MeshOrPoints::ProjectionResult::point |
| | found closest point
|
| std::optional< Vector3f > | MR::MeshOrPoints::ProjectionResult::normal |
| bool | MR::MeshOrPoints::ProjectionResult::isBd = false |
| | can be true only for meshes, if the closest point is located on the boundary of the mesh (or the current region)
|
| float | MR::MeshOrPoints::ProjectionResult::distSq = FLT_MAX |
| | squared distance from query point to the closest point
|
| VertId | MR::MeshOrPoints::ProjectionResult::closestVert |
| MeshOrPoints | MR::MeshOrPointsXf::obj |
| AffineXf3f | MR::MeshOrPointsXf::xf |
| Vector3f | MR::FindOverhangsSettings::axis { Vector3f::plusZ() } |
| | base axis marking the up direction
|
| float | MR::FindOverhangsSettings::layerHeight { 1.f } |
| | height of a layer
|
| float | MR::FindOverhangsSettings::maxOverhangDistance { 1.f } |
| | maximum allowed overhang distance within a layer
|
| int | MR::FindOverhangsSettings::hops = 0 |
| | number of hops used to smooth out the overhang regions (0 - disable smoothing)
|
| const AffineXf3f * | MR::FindOverhangsSettings::xf = nullptr |
| | mesh transform
|
| ProgressCallback | MR::FindOverhangsSettings::progressCb |
| const Mesh & | MR::MeshRegion< RegionTag >::mesh |
| const TaggedBitSet< RegionTag > * | MR::MeshRegion< RegionTag >::region = nullptr |
| MeshTriPoint | MR::MeshPoint::triPoint |
| | relative position on mesh
|
| Vector3f | MR::MeshPoint::pt |
| | 3d coordinates
|
| Vector3f | MR::MeshPoint::inDir |
| | unit direction inside the mesh = minus normal
|
| FacePredicate | MR::MeshPoint::notIncidentFaces |
| | predicate that returns true for mesh faces not-incident to the point
|
| bool | MR::InSphereSearchSettings::insideAndOutside = false |
| float | MR::InSphereSearchSettings::maxRadius = 1 |
| int | MR::InSphereSearchSettings::maxIters = 16 |
| | maximum number of shrinking iterations for one triangle
|
| float | MR::InSphereSearchSettings::minShrinkage = 0.99999f |
| | iterations stop if next radius is larger than minShrinkage times previous radius
|
| float | MR::InSphereSearchSettings::minAngleCos = -1 |
| Vector3f | MR::InSphere::center |
| float | MR::InSphere::radius = 0 |
| MeshProjectionResult | MR::InSphere::oppositeTouchPoint |
| | excluding input point and incident triangles, distSq - squared distance to sphere's center
|
| EdgeId | MR::MeshTopology::HalfEdgeRecord::next |
| | next counter clock wise half-edge in the origin ring
|
| EdgeId | MR::MeshTopology::HalfEdgeRecord::prev |
| | next clock wise half-edge in the origin ring
|
| VertId | MR::MeshTopology::HalfEdgeRecord::org |
| | vertex at the origin of the edge
|
| FaceId | MR::MeshTopology::HalfEdgeRecord::left |
| | face at the left of the edge
|
| Plane3f | MR::TrimWithPlaneParams::plane |
| | Input plane to cut mesh with.
|
| float | MR::TrimWithPlaneParams::eps = 0 |
| | if existing vertex is within eps distance from the plane, then move the vertex not introducing new ones
|
| std::function< void(EdgeId, EdgeId, float)> | MR::TrimWithPlaneParams::onEdgeSplitCallback |
| | is invoked each time when an edge is split. Receives edge ID before split, edge ID after split, and weight of the origin vertex
|
| UndirectedEdgeBitSet * | MR::TrimOptionalOutput::outCutEdges = nullptr |
| | newly appeared hole boundary edges
|
| std::vector< EdgeLoop > * | MR::TrimOptionalOutput::outCutContours = nullptr |
| | newly appeared hole contours where each edge does not have right face
|
| FaceHashMap * | MR::TrimOptionalOutput::new2Old = nullptr |
| | mapping from newly appeared triangle to its original triangle (part to full)
|
| Mesh * | MR::TrimOptionalOutput::otherPart = nullptr |
| | left part of the trimmed mesh
|
| FaceHashMap * | MR::TrimOptionalOutput::otherNew2Old = nullptr |
| | mapping from newly appeared triangle to its original triangle (part to full) in otherPart
|
| std::vector< EdgeLoop > * | MR::TrimOptionalOutput::otherOutCutContours = nullptr |
| | newly appeared hole contours where each edge does not have right face in otherPart
|
| VertId | MR::WeightedVertex::v |
| float | MR::WeightedVertex::weight = 0 |
| EdgeId | MR::MeshTriPoint::e |
| TriPointf | MR::MeshTriPoint::bary |
| T | MR::MinArg< T, I >::val = std::numeric_limits<T>::max() |
| I | MR::MinArg< T, I >::arg |
| T | MR::MaxArg< T, I >::val = std::numeric_limits<T>::lowest() |
| I | MR::MaxArg< T, I >::arg |
| T | MR::MinMaxArg< T, I >::min = std::numeric_limits<T>::max() |
| T | MR::MinMaxArg< T, I >::max = std::numeric_limits<T>::lowest() |
| I | MR::MinMaxArg< T, I >::minArg |
| I | MR::MinMaxArg< T, I >::maxArg |
| bool | MR::MovementBuildBodyParams::allowRotation { true } |
| std::optional< Vector3f > | MR::MovementBuildBodyParams::center |
| std::optional< Vector3f > | MR::MovementBuildBodyParams::bodyNormal |
| std::optional< Vector3f > | MR::MovementBuildBodyParams::bodyUpDir |
| const Contours3f * | MR::MovementBuildBodyParams::trajectoryNormals { nullptr } |
| const AffineXf3f * | MR::MovementBuildBodyParams::b2tXf { nullptr } |
| | optional transform body space to trajectory space
|
| bool | MR::MovementBuildBodyParams::startMeshFromBody { false } |
| | if true, then body-contours will be located exactly on resulting mesh
|
| ObjVertId | MR::ICPGroupPair::srcId |
| ObjVertId | MR::ICPGroupPair::tgtClosestId |
| std::vector< ICPGroupPair > | MR::ICPGroupPairs::vec |
| float | MR::MultiwayICPSamplingParameters::samplingVoxelSize = 0 |
| | sampling size of each object, 0 has special meaning "take all valid points"
|
| int | MR::MultiwayICPSamplingParameters::maxGroupSize = 64 |
| enum MR::MultiwayICPSamplingParameters::CascadeMode | MR::MultiwayICPSamplingParameters::AABBTreeBased |
| ProgressCallback | MR::MultiwayICPSamplingParameters::cb |
| | callback for progress reports
|
| MR_BIND_IGNORE std::mutex | MR::MutexOwner::m |
| AffineXf3f | MR::Nesting::NestingResult::xf |
| | best found xf for this object (might be equal with input xf if no good nesting was found)
|
| bool | MR::Nesting::NestingResult::nested { false } |
| | false - means that this object does not fit the nest
|
| const Mesh * | MR::Nesting::MeshXf::mesh { nullptr } |
| | input mesh - should not be nullptr
|
| AffineXf3f | MR::Nesting::MeshXf::xf |
| | input mesh world transformation before nesting
|
| Box3f | MR::Nesting::NestingBaseParams::nest |
| | available nest
|
| float | MR::Nesting::NestingBaseParams::minInterval { 0.01f } |
| | minimum space among meshes in the nest
|
| bool | MR::DenoiseViaNormalsSettings::fastIndicatorComputation = true |
| | use approximated computation, which is much faster than precise solution
|
| float | MR::DenoiseViaNormalsSettings::beta = 0.01f |
| | 0.001 - sharp edges, 0.01 - moderate edges, 0.1 - smooth edges
|
| float | MR::DenoiseViaNormalsSettings::gamma = 5.f |
| | the amount of smoothing: 0 - no smoothing, 1 - average smoothing, ...
|
| int | MR::DenoiseViaNormalsSettings::normalIters = 10 |
| | the number of iterations to smooth normals and find creases; the more the better quality, but longer computation
|
| int | MR::DenoiseViaNormalsSettings::pointIters = 20 |
| | the number of iterations to update vertex coordinates from found normals; the more the better quality, but longer computation
|
| float | MR::DenoiseViaNormalsSettings::guideWeight = 1 |
| | how much resulting points must be attracted to initial points (e.g. to avoid general shrinkage), must be > 0
|
| bool | MR::DenoiseViaNormalsSettings::limitNearInitial = false |
| | if true then maximal displacement of each point during denoising will be limited
|
| float | MR::DenoiseViaNormalsSettings::maxInitialDist = 0 |
| | maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false
|
| UndirectedEdgeBitSet * | MR::DenoiseViaNormalsSettings::outCreases = nullptr |
| | optionally returns creases found during smoothing
|
| ProgressCallback | MR::DenoiseViaNormalsSettings::cb = {} |
| | to get the progress and optionally cancel
|
| float | MR::ObjectComparableWithReference::ComparableProperty::value = 0 |
| std::optional< float > | MR::ObjectComparableWithReference::ComparableProperty::referenceValue = 0.f |
| float | MR::ObjectComparableWithReference::ComparisonTolerance::positive = 0 |
| | How much larger can this value be compared to the reference?
|
| float | MR::ObjectComparableWithReference::ComparisonTolerance::negative = 0 |
| bool | MR::ObjectComparableWithReference::ComparisonReferenceValue::isSet = false |
| Var | MR::ObjectComparableWithReference::ComparisonReferenceValue::var |
| | If isSet == false, this will hold zeroes, or some other default values.
|
| | diameter |
| | angle |
| | length |
| | _count |
| GcodeChangedSignal | MR::ObjectGcode::gcodeChangedSignal |
| | Points |
| | Smooth |
| | Dashed |
| | _count |
| LinesChangedSignal | MR::ObjectLinesHolder::linesChangedSignal |
| std::optional< size_t > | MR::ObjectLinesHolder::numUndirectedEdges_ |
| std::optional< size_t > | MR::ObjectLinesHolder::numComponents_ |
| std::optional< float > | MR::ObjectLinesHolder::avgEdgeLen_ |
| std::optional< float > | MR::ObjectLinesHolder::totalLength_ |
| ViewportProperty< XfBasedCache< Box3f > > | MR::ObjectLinesHolder::worldBox_ |
| VertColors | MR::ObjectLinesHolder::vertsColorMap_ |
| UndirectedEdgeColors | MR::ObjectLinesHolder::linesColorMap_ |
| ViewportMask | MR::ObjectLinesHolder::showPoints_ |
| ViewportMask | MR::ObjectLinesHolder::smoothConnections_ |
| ViewportMask | MR::ObjectLinesHolder::dashed_ |
| ViewportProperty< DashPattern > | MR::ObjectLinesHolder::dashPattern_ = DashPattern::diagonal( 20 ) |
| float | MR::ObjectLinesHolder::lineWidth_ { 1.0f } |
| | width on lines on screen in pixels
|
| float | MR::ObjectLinesHolder::pointSize_ { 5.f } |
| std::shared_ptr< Polyline3 > | MR::ObjectLinesHolder::polyline_ |
| const std::vector< AffineXf3f > * | MR::ObjectMeshMergeOptions::overrideXfs { nullptr } |
| | if not nullptr: merged object will take overridden transform for each object
|
| std::shared_ptr< Mesh > | MR::ObjectMeshData::mesh |
| FaceBitSet | MR::ObjectMeshData::selectedFaces |
| | selection
|
| UndirectedEdgeBitSet | MR::ObjectMeshData::selectedEdges |
| UndirectedEdgeBitSet | MR::ObjectMeshData::creases |
| VertColors | MR::ObjectMeshData::vertColors |
| | colors
|
| FaceColors | MR::ObjectMeshData::faceColors |
| VertUVCoords | MR::ObjectMeshData::uvCoordinates |
| | textures
|
| TexturePerFace | MR::ObjectMeshData::texturePerFace |
| | Faces |
| | Texture |
| | Edges |
| | Points |
| | SelectedFaces |
| | SelectedEdges |
| | EnableShading |
| | FlatShading |
| | OnlyOddFragments |
| | BordersHighlight |
| | PolygonOffsetFromCamera |
| | _count |
| | recommended for drawing edges on top of mesh
|
| SelectionChangedSignal | MR::ObjectMeshHolder::faceSelectionChangedSignal |
| SelectionChangedSignal | MR::ObjectMeshHolder::edgeSelectionChangedSignal |
| SelectionChangedSignal | MR::ObjectMeshHolder::creasesChangedSignal |
| MeshChangedSignal | MR::ObjectMeshHolder::meshChangedSignal |
| ObjectMeshData | MR::ObjectMeshHolder::data_ |
| Vector< MeshTexture, TextureId > | MR::ObjectMeshHolder::textures_ |
| | Texture options.
|
| MeshTexture | MR::ObjectMeshHolder::ancillaryTexture_ |
| VertUVCoords | MR::ObjectMeshHolder::ancillaryUVCoordinates_ |
| | vertices coordinates in ancillary texture
|
| std::optional< size_t > | MR::ObjectMeshHolder::numHoles_ |
| std::optional< size_t > | MR::ObjectMeshHolder::numComponents_ |
| std::optional< size_t > | MR::ObjectMeshHolder::numUndirectedEdges_ |
| std::optional< size_t > | MR::ObjectMeshHolder::numHandles_ |
| std::optional< bool > | MR::ObjectMeshHolder::meshIsClosed_ |
| std::optional< size_t > | MR::ObjectMeshHolder::numSelectedFaces_ |
| std::optional< size_t > | MR::ObjectMeshHolder::numSelectedEdges_ |
| std::optional< size_t > | MR::ObjectMeshHolder::numCreaseEdges_ |
| std::optional< double > | MR::ObjectMeshHolder::totalArea_ |
| std::optional< double > | MR::ObjectMeshHolder::selectedArea_ |
| std::optional< double > | MR::ObjectMeshHolder::volume_ |
| std::optional< float > | MR::ObjectMeshHolder::avgEdgeLen_ |
| ViewportProperty< XfBasedCache< Box3f > > | MR::ObjectMeshHolder::worldBox_ |
| ViewportMask | MR::ObjectMeshHolder::showTexture_ |
| ViewportMask | MR::ObjectMeshHolder::showFaces_ = ViewportMask::all() |
| ViewportMask | MR::ObjectMeshHolder::showEdges_ |
| ViewportMask | MR::ObjectMeshHolder::showPoints_ |
| ViewportMask | MR::ObjectMeshHolder::showSelectedEdges_ = ViewportMask::all() |
| ViewportMask | MR::ObjectMeshHolder::showSelectedFaces_ = ViewportMask::all() |
| ViewportMask | MR::ObjectMeshHolder::showBordersHighlight_ |
| ViewportMask | MR::ObjectMeshHolder::polygonOffset_ |
| ViewportMask | MR::ObjectMeshHolder::flatShading_ |
| | toggle per-face or per-vertex properties
|
| ViewportMask | MR::ObjectMeshHolder::shadingEnabled_ = ViewportMask::all() |
| ViewportMask | MR::ObjectMeshHolder::onlyOddFragments_ |
| ViewportProperty< Color > | MR::ObjectMeshHolder::edgesColor_ |
| ViewportProperty< Color > | MR::ObjectMeshHolder::pointsColor_ |
| ViewportProperty< Color > | MR::ObjectMeshHolder::bordersColor_ |
| ViewportProperty< Color > | MR::ObjectMeshHolder::edgeSelectionColor_ |
| ViewportProperty< Color > | MR::ObjectMeshHolder::faceSelectionColor_ |
| float | MR::ObjectMeshHolder::edgeWidth_ { 0.5f } |
| float | MR::ObjectMeshHolder::pointSize_ { 5.f } |
| | SelectedVertices |
| | _count |
| static constexpr int | MR::ObjectPointsHolder::MaxRenderingPointsDefault = 1'000'000 |
| | default value for maximum rendered points number
|
| static constexpr int | MR::ObjectPointsHolder::MaxRenderingPointsUnlimited = std::numeric_limits<int>::max() |
| | recommended value for maximum rendered points number to disable discretization
|
| SelectionChangedSignal | MR::ObjectPointsHolder::pointsSelectionChangedSignal |
| Signal< void()> | MR::ObjectPointsHolder::renderDiscretizationChangedSignal |
| | signal about render discretization changing, triggered in setRenderDiscretization
|
| ChangedSignal | MR::ObjectPointsHolder::pointsChangedSignal |
| ChangedSignal | MR::ObjectPointsHolder::normalsChangedSignal |
| VertBitSet | MR::ObjectPointsHolder::selectedPoints_ |
| std::optional< size_t > | MR::ObjectPointsHolder::numValidPoints_ |
| std::optional< size_t > | MR::ObjectPointsHolder::numSelectedPoints_ |
| ViewportProperty< Color > | MR::ObjectPointsHolder::selectedVerticesColor_ |
| ViewportMask | MR::ObjectPointsHolder::showSelectedVertices_ = ViewportMask::all() |
| VertColors | MR::ObjectPointsHolder::vertsColorMap_ |
| std::shared_ptr< PointCloud > | MR::ObjectPointsHolder::points_ |
| ViewportProperty< XfBasedCache< Box3f > > | MR::ObjectPointsHolder::worldBox_ |
| float | MR::ObjectPointsHolder::pointSize_ { 5.0f } |
| | size of point in pixels
|
| int | MR::ObjectPointsHolder::maxRenderingPoints_ = MaxRenderingPointsDefault |
| | Selectable |
| | object itself and all its ancestors are selectable
|
| | LocalSelectable |
| | object itself is selectable
|
| | Selected |
| | object itself is selected and all its ancestors are selectable
|
| | LocalSelected |
| | object itself is selected
|
| TagAddedSignal | MR::ObjectTagEventDispatcher::tagAddedSignal |
| | the signal is called when a tag is added to any object
|
| TagRemovedSignal | MR::ObjectTagEventDispatcher::tagRemovedSignal |
| | the signal is called when a tag is removed from any object
|
| int | MR::OffsetContourIndex::contourId { -1 } |
| | -1 means unknown index
|
| int | MR::OffsetContourIndex::vertId { -1 } |
| | -1 means unknown index
|
| OffsetContourIndex | MR::OffsetContoursOrigins::lOrg |
| OffsetContourIndex | MR::OffsetContoursOrigins::lDest |
| | index of lower corresponding destination point on input contour
|
| OffsetContourIndex | MR::OffsetContoursOrigins::uOrg |
| | index of upper corresponding origin point on input contour
|
| OffsetContourIndex | MR::OffsetContoursOrigins::uDest |
| | index of upper corresponding destination point on input contour
|
| float | MR::OffsetContoursOrigins::lRatio { 0.0f } |
| float | MR::OffsetContoursOrigins::uRatio { 0.0f } |
| enum MR::OffsetContoursParams::Type | MR::OffsetContoursParams::Offset |
| enum MR::OffsetContoursParams::EndType | MR::OffsetContoursParams::Round |
| enum MR::OffsetContoursParams::CornerType | MR::OffsetContoursParams::Round |
| float | MR::OffsetContoursParams::minAnglePrecision = PI_F / 9.0f |
| | precision of round corners and ends
|
| float | MR::OffsetContoursParams::maxSharpAngle = PI_F * 2.0f / 3.0f |
| | limit for sharp corners connection
|
| OffsetContoursVertMaps * | MR::OffsetContoursParams::indicesMap = nullptr |
| | 120 deg
|
| OriginZCallback | MR::OffsetContoursRestoreZParams::zCallback |
| int | MR::OffsetContoursRestoreZParams::relaxIterations = 1 |
| | if > 0 z coordinate will be relaxed this many iterations
|
| float | MR::ThickenParams::outsideOffset = 0 |
| | the amount of offset for original mesh vertices
|
| float | MR::ThickenParams::insideOffset = 0 |
| | the amount of offset for cloned mirrored mesh vertices in the opposite direction
|
| float | MR::ThickenParams::normalsTrustFactor = 1 |
| float | MR::ZCompensateParams::maxShift = 0 |
| bool | MR::ZCompensateParams::reduceSelfIntersections = false |
| | if true, limits the movement of each vertex to reduce self-intersections in the mesh
|
| float | MR::ZCompensateParams::minThickness = 0 |
| | only if (reduceSelfIntersections = true), avoids moving a vertex closer than this distance to another triangle
|
| ProgressCallback | MR::ZCompensateParams::progress |
| | to report progress and cancel processing
|
| const Mesh & | MR::SortIntersectionsData::otherMesh |
| const ContinuousContours & | MR::SortIntersectionsData::contours |
| ConvertToIntVector | MR::SortIntersectionsData::converter |
| const AffineXf3f * | MR::SortIntersectionsData::rigidB2A {nullptr} |
| size_t | MR::SortIntersectionsData::meshAVertsNum |
| bool | MR::SortIntersectionsData::isOtherA {false} |
| std::variant< FaceId, EdgeId, VertId > | MR::OneMeshIntersection::primitiveId |
| Vector3f | MR::OneMeshIntersection::coordinate |
| std::vector< OneMeshIntersection > | MR::OneMeshContour::intersections |
| bool | MR::OneMeshContour::closed {false} |
| GeodesicPathApprox | MR::SearchPathSettings::geodesicPathApprox { GeodesicPathApprox::DijkstraAStar } |
| | the algorithm to compute approximately geodesic path
|
| int | MR::SearchPathSettings::maxReduceIters { 100 } |
| | the maximum number of iterations to reduce approximate path length and convert it in geodesic path
|
| int | MR::OutlierParams::maxClusterSize = 20 |
| | Maximum points in the outlier component.
|
| int | MR::OutlierParams::maxNeighbors = 7 |
| | Maximum number of adjacent points for an outlier point.
|
| float | MR::OutlierParams::minHeight = 0.3f |
| | Minimum distance (as proportion of search radius) to the approximate surface from outliers point.
|
| float | MR::OutlierParams::minAngle = PI_F / 3.f |
| OutlierParams | MR::FindOutliersParams::finderParams |
| | Parameters of various criteria for detecting outlier points.
|
| float | MR::FindOutliersParams::radius = 1.f |
| | Radius of the search for neighboring points for analysis.
|
| OutlierTypeMask | MR::FindOutliersParams::mask = OutlierTypeMask::All |
| | Mask of the types of outliers that are looking for.
|
| ProgressCallback | MR::FindOutliersParams::progress = {} |
| | Progress callback.
|
| float | MR::FindOverlappingSettings::maxDistSq = 1e-10f |
| | maximal distance between closest points of one triangle and another overlapping triangle
|
| float | MR::FindOverlappingSettings::maxNormalDot = -0.99f |
| | suggestion: multiply it on mesh.getBoundingBox().size().lengthSq();
|
| float | MR::FindOverlappingSettings::minAreaFraction = 1e-5f |
| | consider triangle as overlapping only if the area of the oppositely oriented triangle is at least given fraction of the triangle's area
|
| std::function< bool(FaceId l, FaceId r)> | MR::FindOverlappingSettings::pred |
| | if predicate is present it should return true for pair of faces that should be considered as overlap
|
| ProgressCallback | MR::FindOverlappingSettings::cb |
| | for reporting current progress and allowing the user to cancel the algorithm
|
| T | MR::Parabola< T >::a = 0 |
| T | MR::Parabola< T >::b = 0 |
| T | MR::Parabola< T >::c = 0 |
| T & | MR::Parallel::CallWithTLS< T >::tls |
| tbb::enumerable_thread_specific< L > & | MR::Parallel::CallWithTLSMaker< L >::e |
| float | MR::ParallelProgressReporter::TaskInfo::progress = 0.f |
| float | MR::ParallelProgressReporter::TaskInfo::weight = 1.f |
| ParallelProgressReporter * | MR::ParallelProgressReporter::PerTaskReporter::reporter_ = nullptr |
| TaskInfo * | MR::ParallelProgressReporter::PerTaskReporter::task_ = nullptr |
| FaceMapOrHashMap * | MR::PartMapping::src2tgtFaces = nullptr |
| VertMapOrHashMap * | MR::PartMapping::src2tgtVerts = nullptr |
| WholeEdgeMapOrHashMap * | MR::PartMapping::src2tgtEdges = nullptr |
| FaceMapOrHashMap * | MR::PartMapping::tgt2srcFaces = nullptr |
| VertMapOrHashMap * | MR::PartMapping::tgt2srcVerts = nullptr |
| WholeEdgeMapOrHashMap * | MR::PartMapping::tgt2srcEdges = nullptr |
| Vector3< T > | MR::Plane3< T >::n |
| T | MR::Plane3< T >::d = 0 |
| std::optional< Triangulation > * | MR::PlyLoadParams::tris = nullptr |
| | optional load artifact: mesh triangles
|
| std::optional< Edges > * | MR::PlyLoadParams::edges = nullptr |
| | optional load artifact: polyline edges
|
| VertColors * | MR::PlyLoadParams::colors = nullptr |
| | optional load artifact: per-vertex color map
|
| FaceColors * | MR::PlyLoadParams::faceColors = nullptr |
| | optional load artifact: per-face color map
|
| VertUVCoords * | MR::PlyLoadParams::uvCoords = nullptr |
| | optional load artifact: per-vertex uv-coordinates
|
| TriCornerUVCoords * | MR::PlyLoadParams::triCornerUvCoords = nullptr |
| | optional load artifact: per-corner uv-coordinates for each triangle
|
| VertNormals * | MR::PlyLoadParams::normals = nullptr |
| | optional load artifact: per-vertex normals
|
| MeshTexture * | MR::PlyLoadParams::texture = nullptr |
| | optional load artifact: texture image
|
| std::filesystem::path | MR::PlyLoadParams::dir |
| | directory to load texture files from
|
| ProgressCallback | MR::PlyLoadParams::callback |
| | callback for set progress and stop process
|
| bool | MR::PlyLoadParams::telemetrySignal = true |
| | permit telemetry signal about loading
|
| VertMap * | MR::DividePointCloudOptionalOutput::outVmap { nullptr } |
| | optional out map from input points to output
|
| PointCloud * | MR::DividePointCloudOptionalOutput::otherPart { nullptr } |
| | optional out other part of the point cloud
|
| VertMap * | MR::DividePointCloudOptionalOutput::otherOutVmap { nullptr } |
| | optional out map from input points to other part output
|
| const PointCloud & | MR::PointCloudPart::cloud |
| const VertBitSet * | MR::PointCloudPart::region = nullptr |
| | CapVisibility |
| | _count |
| FaceId | MR::PointOnFace::face |
| | mesh's face containing the point
|
| Vector3f | MR::PointOnFace::point |
| | a point of the mesh's face
|
| Vector3f | MR::PointOnObject::point |
| | 3D location on the object in local coordinates
|
| float | MR::PointOnObject::zBuffer { 1.0f } |
| | z buffer value
|
| int MR::PointOnObject::primId = -1 | |
| FaceId MR::PointOnObject::face | |
| UndirectedEdgeId MR::PointOnObject::uedge | |
| | for ObjectMesh More...
|
| VertId MR::PointOnObject::vert | |
| | for ObjectLines More...
|
| union { | |
| int MR::PointOnObject::primId = -1 | |
| FaceId MR::PointOnObject::face | |
| UndirectedEdgeId MR::PointOnObject::uedge | |
| | for ObjectMesh More...
|
| VertId MR::PointOnObject::vert | |
| | for ObjectLines More...
|
| }; | |
| | to which primitive that point pertains
|
| VertColors * | MR::PointsLoadSettings::colors = nullptr |
| | points where to load point color map
|
| AffineXf3f * | MR::PointsLoadSettings::outXf = nullptr |
| | transform for the loaded point cloud
|
| ProgressCallback | MR::PointsLoadSettings::callback |
| | callback for set progress and stop process
|
| bool | MR::PointsLoadSettings::telemetrySignal = true |
| | permit telemetry signal about loading
|
| float | MR::MeshProjectionParameters::loDistLimitSq = 0 |
| float | MR::MeshProjectionParameters::upDistLimitSq = FLT_MAX |
| const AffineXf3f * | MR::MeshProjectionParameters::refXf = nullptr |
| | optional reference mesh to world transformation
|
| const AffineXf3f * | MR::MeshProjectionParameters::xf = nullptr |
| | optional test points to world transformation
|
| int | MR::PolylineComponents::LargeByLengthComponentsSettings::maxLargeComponents = 2 |
| | return at most given number of largest by length connected components
|
| int * | MR::PolylineComponents::LargeByLengthComponentsSettings::numSmallerComponents = nullptr |
| | optional output: the number of components in addition to returned ones
|
| float | MR::PolylineComponents::LargeByLengthComponentsSettings::minLength = 0 |
| | do not consider a component large if its length is below this value
|
| float | MR::DecimatePolylineSettings< V >::maxError = 0.001f |
| | Limit from above on the maximum distance from moved vertices to original contour.
|
| float | MR::DecimatePolylineSettings< V >::maxEdgeLen = FLT_MAX |
| | Maximal possible edge length created during decimation.
|
| float | MR::DecimatePolylineSettings< V >::stabilizer = 0.001f |
| bool | MR::DecimatePolylineSettings< V >::optimizeVertexPos = true |
| int | MR::DecimatePolylineSettings< V >::maxDeletedVertices = INT_MAX |
| | Limit on the number of deleted vertices.
|
| VertBitSet * | MR::DecimatePolylineSettings< V >::region = nullptr |
| bool | MR::DecimatePolylineSettings< V >::touchBdVertices = true |
| std::function< bool(EdgeId edgeToCollapse, const V &newEdgeOrgPos)> | MR::DecimatePolylineSettings< V >::preCollapse |
| | The user can provide this optional callback that is invoked immediately before edge collapse;.
|
| std::function< void(UndirectedEdgeId ue, float &collapseErrorSq, V &collapsePos)> | MR::DecimatePolylineSettings< V >::adjustCollapse |
| | The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position.
|
| Vector< QuadraticForm< V >, VertId > * | MR::DecimatePolylineSettings< V >::vertForms = nullptr |
| | If not null, then on input: if the vector is not empty then it is taken for initialization instead of form computation for all vertices; on output: quadratic form for each remaining vertex is returned there.
|
| int | MR::DecimatePolylineResult::vertsDeleted = 0 |
| | Number deleted verts. Same as the number of performed collapses.
|
| float | MR::DecimatePolylineResult::errorIntroduced = 0 |
| | Max different (as distance) between original contour and result contour.
|
| EdgeId | MR::PolylineTopology::HalfEdgeRecord::next |
| | next counter clock wise half-edge in the origin ring
|
| VertId | MR::PolylineTopology::HalfEdgeRecord::org |
| | vertex at the origin of the edge
|
| PolylineTopology & | MR::PolylineMaker::topology |
| std::function< void(EdgeId, EdgeId, float)> | MR::DividePolylineParameters::onEdgeSplitCallback |
| | onEdgeSplitCallback is invoked each time when an edge is split. Receives edge ID before split, edge ID after split, and weight of the origin vertex
|
| bool | MR::DividePolylineParameters::closeLineAfterCut = false |
| VertMap * | MR::DividePolylineParameters::outVmap = nullptr |
| | map from input polyline verts to output
|
| EdgeMap * | MR::DividePolylineParameters::outEmap = nullptr |
| | map from input polyline edges to output
|
| Polyline3 * | MR::DividePolylineParameters::otherPart = nullptr |
| | otherPart Optional return, polyline composed from edges on the negative side of the plane
|
| VertMap * | MR::DividePolylineParameters::otherOutVmap = nullptr |
| | map from input polyline verts to other output
|
| EdgeMap * | MR::DividePolylineParameters::otherOutEmap = nullptr |
| | map from input polyline edges to other output
|
| std::string | MR::PositionedText::text |
| Vector3f | MR::PositionedText::position |
| const VertBitSet * | MR::PositionVertsSmoothlyParams::region = nullptr |
| const Vector< Vector3f, VertId > * | MR::PositionVertsSmoothlyParams::vertShifts = nullptr |
| | optional additional shifts of each vertex relative to smooth position
|
| float | MR::PositionVertsSmoothlyParams::stabilizer = 0 |
| | the more the value, the bigger attraction of each vertex to its original position
|
| VertMetric | MR::PositionVertsSmoothlyParams::vertStabilizers |
| | if specified then it is used instead of stabilizer
|
| UndirectedEdgeMetric | MR::PositionVertsSmoothlyParams::edgeWeights |
| | if specified then it is used for edge weights instead of default 1
|
| const VertBitSet * | MR::SpacingSettings::region = nullptr |
| | vertices to be moved by the algorithm, nullptr means all valid vertices
|
| UndirectedEdgeMetric | MR::SpacingSettings::dist |
| | target distance of each edge in the mesh (for at least one edge's vertex in the region)
|
| int | MR::SpacingSettings::numIters = 10 |
| | must be defined by the caller
|
| float | MR::SpacingSettings::stabilizer = 3 |
| | too small number here can lead to instability, too large - to slow convergence
|
| float | MR::SpacingSettings::maxSumNegW = 0.1f |
| | maximum sum of minus negative weights, if it is exceeded then stabilizer is increased automatically
|
| FacePredicate | MR::SpacingSettings::isInverted |
| | if this predicated is given, then all inverted faces will be converted in degenerate faces at the end of each iteration
|
| float | MR::InflateSettings::pressure = 0 |
| int | MR::InflateSettings::iterations = 3 |
| bool | MR::InflateSettings::preSmooth = true |
| bool | MR::InflateSettings::gradualPressureGrowth = true |
| | whether to increase the pressure gradually during the iterations (recommended for best quality)
|
| Event | MR::PrecipitationSimulator::SimulationStep::event = Event::Finish |
| float | MR::PrecipitationSimulator::SimulationStep::amount = FLT_MAX |
| | amount of precipitation (in same units as mesh coordinates and water level)
|
| GraphVertId | MR::PrecipitationSimulator::SimulationStep::basin |
| GraphVertId | MR::PrecipitationSimulator::SimulationStep::neiBasin |
| VertId | MR::PreciseVertCoord::id |
| | unique id of the vertex (in both contours)
|
| int | MR::PreciseVertCoord::pt |
| | coordinate
|
| VertId | MR::PreciseVertCoords2::id |
| | unique id of the vertex (in both contours)
|
| Vector2i | MR::PreciseVertCoords2::pt |
| | integer coordinates of the vertex
|
| bool | MR::SegmentSegmentIntersectResult::doIntersect = false |
| | whether the segments intersect
|
| bool | MR::SegmentSegmentIntersectResult::cIsLeftFromAB = false |
| | whether the directed line AB has C point at the left
|
| ConvertToIntVector2 | MR::CoordinateConverters2::toInt {} |
| ConvertToFloatVector2 | MR::CoordinateConverters2::toFloat {} |
| VertId | MR::PreciseVertCoords::id |
| | unique id of the vertex (in both meshes)
|
| Vector3i | MR::PreciseVertCoords::pt |
| | integer coordinates of the vertex
|
| bool | MR::TriangleSegmentIntersectResult::doIntersect = false |
| | whether triangle and segment intersect
|
| bool | MR::TriangleSegmentIntersectResult::dIsLeftFromABC = false |
| | whether the plane with orientated triangle ABC has D point at the left
|
| ConvertToIntVector | MR::CoordinateConverters::toInt {} |
| ConvertToFloatVector | MR::CoordinateConverters::toFloat {} |
| Container | MR::PriorityQueue< T, P >::c |
| MeshProjectionTransforms | MR::ProjectAttributeParams::xfs |
| ProgressCallback | MR::ProjectAttributeParams::progressCb |
| SM | MR::QuadraticForm< V >::A |
| T | MR::QuadraticForm< V >::c = 0 |
| T | MR::Quaternion< T >::a = 1 |
| | real part of the quaternion
|
| T | MR::Quaternion< T >::b = 0 |
| T | MR::Quaternion< T >::c = 0 |
| T | MR::Quaternion< T >::d = 0 |
| | imaginary part: b*i + c*j + d*k
|
| Vector3f | MR::CompensateRadiusParams::direction |
| | Z direction of milling tool.
|
| float | MR::CompensateRadiusParams::toolRadius { 0.0f } |
| | radius of spherical tool
|
| const FaceBitSet * | MR::CompensateRadiusParams::region { nullptr } |
| int | MR::CompensateRadiusParams::maxIterations { 100 } |
| | maximum iteration of applying algorithm (each iteration improves result a little bit)
|
| int | MR::CompensateRadiusParams::relaxExpansion = 3 |
| | how many hops to expand around each moved vertex for relaxation
|
| int | MR::CompensateRadiusParams::relaxIterations = 5 |
| | how many iterations of relax is applied on each compensation iteration
|
| float | MR::CompensateRadiusParams::relaxForce = 0.3f |
| | force of relaxations on each compensation iteration
|
| ProgressCallback | MR::CompensateRadiusParams::callback |
| int | MR::RelaxParams::iterations = 1 |
| | number of iterations
|
| const VertBitSet * | MR::RelaxParams::region = nullptr |
| | region to relax
|
| float | MR::RelaxParams::force = 0.5f |
| | speed of relaxing, typical values (0.0, 0.5]
|
| bool | MR::RelaxParams::limitNearInitial = false |
| | if true then maximal displacement of each point during denoising will be limited
|
| float | MR::RelaxParams::maxInitialDist = 0 |
| | maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false
|
| MR_BIND_IGNORE int | MR::RelaxParams::_padding |
| V | MR::RigidScaleXf3< T >::a |
| | rotation angles relative to x,y,z axes
|
| V | MR::RigidScaleXf3< T >::b |
| | shift
|
| T | MR::RigidScaleXf3< T >::s = 1 |
| | scaling
|
| V | MR::RigidXf3< T >::a |
| | rotation angles relative to x,y,z axes
|
| V | MR::RigidXf3< T >::b |
| | shift
|
| bool | MR::SaveSettings::onlyValidPoints = true |
| bool | MR::SaveSettings::packPrimitives = true |
| const VertColors * | MR::SaveSettings::colors = nullptr |
| | optional per-vertex color to save with the geometry
|
| const std::vector< Color > * | MR::SaveSettings::primitiveColors = nullptr |
| | per-face colors for meshes, per-undirected-edge colors for polylines, unused for point clouds and other
|
| const VertUVCoords * | MR::SaveSettings::uvMap = nullptr |
| | optional per-vertex uv coordinate to save with the geometry
|
| bool | MR::SaveSettings::saveTriCornerUVCoords = true |
| const MeshTexture * | MR::SaveSettings::texture = nullptr |
| | optional texture to save with the geometry
|
| std::string | MR::SaveSettings::materialName = "Default" |
| | the name of file (UTF8 encoded) without extension to save texture in some formats (e.g. .OBJ, .PLY)
|
| const AffineXf3d * | MR::SaveSettings::xf = nullptr |
| | this transformation can optionally be applied to all vertices (points) of saved object
|
| std::optional< LengthUnit > | MR::SaveSettings::lengthUnit |
| | units of input coordinates and transformation, to be serialized if the format supports it
|
| std::optional< Color > | MR::SaveSettings::solidColor |
| | the color of whole object
|
| ProgressCallback | MR::SaveSettings::progress |
| | to report save progress and cancel saving if user desires
|
| T | MR::SegmPoint< T >::a = 0 |
| | a in [0,1], a=0 => point is in v0, a=1 => point is in v1
|
| static constexpr auto | MR::SegmPoint< T >::eps = 10 * std::numeric_limits<T>::epsilon() |
| SeparationPointMap | MR::SeparationPointStorage::Block::smap |
| std::vector< Vector3f > | MR::SeparationPointStorage::Block::coords |
| VertId | MR::SeparationPointStorage::Block::shift |
| | after makeUniqueVids(), it is the unique id of first point in coords
|
| Triangulation | MR::SeparationPointStorage::Block::tris |
| Vector< VoxelId, FaceId > | MR::SeparationPointStorage::Block::faceMap |
| float | MR::SharpenMarchingCubesMeshSettings::minNewVertDev = 0 |
| float | MR::SharpenMarchingCubesMeshSettings::maxNewRank2VertDev = 0 |
| float | MR::SharpenMarchingCubesMeshSettings::maxNewRank3VertDev = 0 |
| float | MR::SharpenMarchingCubesMeshSettings::offset = 0 |
| | relative to reference mesh
|
| float | MR::SharpenMarchingCubesMeshSettings::maxOldVertPosCorrection = 0 |
| int | MR::SharpenMarchingCubesMeshSettings::posSelIters = 3 |
| UndirectedEdgeBitSet * | MR::SharpenMarchingCubesMeshSettings::outSharpEdges = nullptr |
| | if non-null then created sharp edges will be saved here
|
| Vector3f | MR::SkyPatch::dir |
| | direction toward the center of the patch
|
| float | MR::SkyPatch::radiation = 0 |
| | radiation of the patch depending on Sun's position, sky clearness and brightness, etc
|
| V | MR::Sphere< V >::center |
| T | MR::Sphere< V >::radius = 0 |
| T | MR::SymMatrix2< T >::xx = 0 |
| | zero matrix by default
|
| T | MR::SymMatrix2< T >::xy = 0 |
| T | MR::SymMatrix2< T >::yy = 0 |
| T | MR::SymMatrix3< T >::xx = 0 |
| | zero matrix by default
|
| T | MR::SymMatrix3< T >::xy = 0 |
| T | MR::SymMatrix3< T >::xz = 0 |
| T | MR::SymMatrix3< T >::yy = 0 |
| T | MR::SymMatrix3< T >::yz = 0 |
| T | MR::SymMatrix3< T >::zz = 0 |
| T | MR::SymMatrix4< T >::xx = 0 |
| | zero matrix by default
|
| T | MR::SymMatrix4< T >::xy = 0 |
| T | MR::SymMatrix4< T >::xz = 0 |
| T | MR::SymMatrix4< T >::xw = 0 |
| T | MR::SymMatrix4< T >::yy = 0 |
| T | MR::SymMatrix4< T >::yz = 0 |
| T | MR::SymMatrix4< T >::yw = 0 |
| T | MR::SymMatrix4< T >::zz = 0 |
| T | MR::SymMatrix4< T >::zw = 0 |
| T | MR::SymMatrix4< T >::ww = 0 |
| size_t | MR::SystemMemory::physicalTotal = 0 |
| | total amount of physical memory in the system, in bytes (0 if no info)
|
| size_t | MR::SystemMemory::physicalAvailable = 0 |
| | available amount of physical memory in the system, in bytes (0 if no info)
|
| tbb::task_arena | MR::TbbTaskArenaAndGroup::arena |
| tbb::task_group | MR::TbbTaskArenaAndGroup::group |
| Signal< void(const std::string &)> | MR::TelemetrySignal |
| | activate this signal if you want to add some string in telemetry
|
| enum MR::BaseTiffParameters::SampleType | MR::BaseTiffParameters::Unknown |
| enum MR::BaseTiffParameters::ValueType | MR::BaseTiffParameters::Unknown |
| int | MR::BaseTiffParameters::bytesPerSample = 0 |
| | size of internal data in file
|
| Vector2i | MR::BaseTiffParameters::imageSize |
| | size of image if not layered, otherwise size of layer
|
| bool | MR::TiffParameters::tiled = false |
| | true if tif file is tiled
|
| Vector2i | MR::TiffParameters::tileSize |
| int | MR::TiffParameters::layers = 1 |
| int | MR::TiffParameters::depth = 0 |
| | tile depth (if several layers)
|
| uint8_t * | MR::RawTiffOutput::bytes { nullptr } |
| | main output data, should be allocated
|
| size_t | MR::RawTiffOutput::size { 0 } |
| | allocated data size
|
| TiffParameters * | MR::RawTiffOutput::params { nullptr } |
| | optional params output
|
| AffineXf3f * | MR::RawTiffOutput::p2wXf { nullptr } |
| | optional pixel to world transform
|
| bool | MR::RawTiffOutput::convertToFloat { true } |
| | input if true loads tiff file as floats array
|
| float * | MR::RawTiffOutput::min { nullptr } |
| | min max
|
| float * | MR::RawTiffOutput::max { nullptr } |
| BaseTiffParameters | MR::WriteRawTiffParams::baseParams |
| const AffineXf3f * | MR::WriteRawTiffParams::xf = nullptr |
| | optional transformation data written to GeoTIFF's ModelTransformationTag
|
| std::string | MR::WriteRawTiffParams::noData |
| | optional NoData value written to GDAL_NODATA
|
| Vector3< T > | MR::TriTriDistanceResult< T >::a |
| Vector3< T > | MR::TriTriDistanceResult< T >::b |
| T | MR::TriTriDistanceResult< T >::distSq = 0 |
| bool | MR::TriTriDistanceResult< T >::overlap = true |
| T | MR::TriTriDistanceParams< T >::upDistLimitSq = std::numeric_limits<T>::max() |
| UpLimitCheck | MR::TriTriDistanceParams< T >::upLimitCheck = UpLimitCheck::Greater |
| Triangulation | MR::TriMesh::tris |
| VertCoords | MR::TriMesh::points |
| FaceId | MR::FaceFaceFace::aFace |
| FaceId | MR::FaceFaceFace::bFace |
| FaceId | MR::FaceFaceFace::cFace |
| T | MR::TriPoint< T >::a |
| | a in [0,1], a=0 => point is on [v2,v0] edge, a=1 => point is in v1
|
| T | MR::TriPoint< T >::b |
| | b in [0,1], b=0 => point is on [v0,v1] edge, b=1 => point is in v2
|
| static constexpr auto | MR::TriPoint< T >::eps = SegmPoint<T>::eps |
| Vector3< T > | MR::TwoLineSegmClosestPoints< T >::a |
| | the closest points each from its respective segment
|
| Vector3< T > | MR::TwoLineSegmClosestPoints< T >::b |
| Vector3< T > | MR::TwoLineSegmClosestPoints< T >::dir |
| float | MR::UniformSamplingSettings::distance = 0 |
| | minimal distance between samples
|
| float | MR::UniformSamplingSettings::minNormalDot = 0 |
| bool | MR::UniformSamplingSettings::lexicographicalOrder = true |
| const VertNormals * | MR::UniformSamplingSettings::pNormals = nullptr |
| | if not nullptr then these normals will be used during sampling instead of normals in the cloud itself
|
| ProgressCallback | MR::UniformSamplingSettings::progress |
| | to report progress and cancel processing
|
| bool | MR::UniteManyMeshesParams::useRandomShifts { false } |
| | Apply random shift to each mesh, to prevent degenerations on coincident surfaces.
|
| bool | MR::UniteManyMeshesParams::fixDegenerations { false } |
| float | MR::UniteManyMeshesParams::maxAllowedError { 1e-5f } |
| unsigned int | MR::UniteManyMeshesParams::randomShiftsSeed { 0 } |
| | Seed that is used for random shifts.
|
| FaceBitSet * | MR::UniteManyMeshesParams::newFaces { nullptr } |
| | If set, the bitset will store new faces created by boolean operations.
|
| NestedComponenetsMode | MR::UniteManyMeshesParams::nestedComponentsMode { NestedComponenetsMode::Remove } |
| bool | MR::UniteManyMeshesParams::mergeOnFail { false } |
| | If set - merges meshes instead of booleaning it if boolean operation fails.
|
| bool | MR::UniteManyMeshesParams::forceCut = false |
| ProgressCallback | MR::UniteManyMeshesParams::progressCb |
| float | MR::UnitInfo::conversionFactor = 1 |
| std::string_view | MR::UnitInfo::prettyName |
| std::string_view | MR::UnitInfo::unitSuffix |
| ThreeVertIds | MR::UnorientedTriangle::verts {} |
| std::vector< T > | MR::Vector< T, I >::vec_ |
| | The user can directly manipulate the vector, they can't break anything anyway.
|
| static constexpr int | MR::Vector3< T >::elements = 3 |
| T | MR::Vector3< T >::x |
| T | MR::Vector3< T >::y |
| T | MR::Vector3< T >::z |
| static constexpr int | MR::Vector4< T >::elements = 4 |
| T | MR::Vector4< T >::x |
| T | MR::Vector4< T >::y |
| T | MR::Vector4< T >::z |
| T | MR::Vector4< T >::w |
| static constexpr int | MR::VectorTraits< T >::size = 1 |
| static constexpr bool | MR::VectorTraits< T >::supportNoInit = false |
| static constexpr int | MR::VectorTraits< Vector2< T > >::size = 2 |
| static constexpr bool | MR::VectorTraits< Vector2< T > >::supportNoInit = true |
| static constexpr int | MR::VectorTraits< Vector3< T > >::size = 3 |
| static constexpr bool | MR::VectorTraits< Vector3< T > >::supportNoInit = true |
| static constexpr int | MR::VectorTraits< Vector4< T > >::size = 4 |
| static constexpr bool | MR::VectorTraits< Vector4< T > >::supportNoInit = true |
| VertId | MR::WatershedGraph::BasinInfo::lowestVert |
| | in the whole basin
|
| float | MR::WatershedGraph::BasinInfo::lowestLevel = FLT_MAX |
| | lowest level (z-coordinate of lowestVert) in the basin
|
| float | MR::WatershedGraph::BasinInfo::area = 0 |
| | precipitation area that flows in this basin (and if it is full, continue flowing next)
|
| float | MR::WatershedGraph::BasinInfo::lowestBdLevel = FLT_MAX |
| | lowest position on the boundary of the basin
|
| float | MR::WatershedGraph::BasinInfo::maxVolume = 0 |
| | full water volume to be accumulated in the basin till water reaches the lowest height on the boundary
|
| float | MR::WatershedGraph::BasinInfo::accVolume = 0 |
| | accumulated water volume in the basin so far
|
| float | MR::WatershedGraph::BasinInfo::lastUpdateAmount = 0 |
| | the amount when accVolume was last updated
|
| float | MR::WatershedGraph::BasinInfo::lastMergeLevel = FLT_MAX |
| | water level in the basin when it was formed (by merge or creation)
|
| float | MR::WatershedGraph::BasinInfo::lastMergeVolume = 0 |
| | water volume in the basin when it was formed (by merge or creation)
|
| Graph::EdgeId | MR::WatershedGraph::BasinInfo::overflowVia |
| | when level=lowestBdLevel, volume=0, all water from this basin overflows via this boundary
|
| VertId | MR::WatershedGraph::BdInfo::lowestVert |
| | on this boundary
|
| VertId | MR::WatershedGraph::OverflowPoint::v |
| Graph::VertId | MR::WatershedGraph::OverflowPoint::fullBasin |
| | mesh vertex on the boundary of full basin and the other where it overflows
|
| Graph::VertId | MR::WatershedGraph::OverflowPoint::overflowTo |
| T & | MR::Writer< T >::obj |
| PyObject *(* | MR::PythonExport::ModuleData::initFncPointer )(void) |
| std::array< std::vector< PythonRegisterFuncton >, size_t(Priority::Count)> | MR::PythonExport::ModuleData::functions |
| MeshTriPoint | MR::TextMeshAlignParams::startPoint |
| | Position on mesh, where text's pivot point is mapped.
|
| Vector2f | MR::TextMeshAlignParams::pivotPoint {0.0f, 0.0f} |
| Vector3f | MR::TextMeshAlignParams::direction |
| | Direction of text, must be not zero.
|
| const Vector3f * | MR::TextMeshAlignParams::textNormal {nullptr} |
| | Text normal to surface, if nullptr - use mesh normal at startPoint
|
| float | MR::TextMeshAlignParams::fontHeight {1.0f} |
| | Font height, meters.
|
| float | MR::TextMeshAlignParams::surfaceOffset {1.0f} |
| | Text mesh inside and outside offset of input mesh.
|
| float | MR::TextMeshAlignParams::textMaximumMovement {2.5f} |
| | Maximum possible movement of text mesh alignment, meters.
|
| bool | MR::TextMeshAlignParams::fontBasedSizeCalc { false } |
| | If true then size of each symbol will be calculated from font height, otherwise - on bounding box of the text.
|
| SymbolMeshParams | MR::BendTextAlongCurveParams::symbolMesh |
| | parameters of contours to mesh conversion
|
| float | MR::BendTextAlongCurveParams::pivotCurveTime = 0 |
| | Position on the curve, where bounding box's pivot point is mapped.
|
| Vector2f | MR::BendTextAlongCurveParams::pivotBoxPoint {0.0f, 0.0f} |
| float | MR::BendTextAlongCurveParams::fontHeight {1.0f} |
| | Font height, meters.
|
| float | MR::BendTextAlongCurveParams::surfaceOffset {1.0f} |
| | Text mesh inside and outside offset of curve's surface.
|
| bool | MR::BendTextAlongCurveParams::fontBasedSizeCalc { false } |
| | If true then size of each symbol will be calculated from font height, otherwise - on bounding box of the text.
|
| bool | MR::BendTextAlongCurveParams::periodicCurve = false |
| | if true, curve parameter will be always within [0,1) with repetition: xr := x - floor(x)
|
| bool | MR::BendTextAlongCurveParams::stretch = true |
| | stretch whole text along curve to fit in unit curve range
|
| | SourcePoint |
| | LeaderLine |
| | Background |
| | Contour |
| | _count |
| PositionedText | MR::ObjectLabel::label_ |
| std::filesystem::path | MR::ObjectLabel::pathToFont_ |
| Vector2f | MR::ObjectLabel::pivotPoint_ |
| float | MR::ObjectLabel::fontHeight_ { 25.0f } |
| | size of label font on screen in pixels
|
| float | MR::ObjectLabel::leaderLineWidth_ { 1.0f } |
| | width of leader line on screen in pixels
|
| float | MR::ObjectLabel::sourcePointSize_ { 5.f } |
| | radius of source point on screen in pixels
|
| float | MR::ObjectLabel::backgroundPadding_ { 8.f } |
| | padding of background on screen in pixels
|
| ViewportMask | MR::ObjectLabel::sourcePoint_ |
| ViewportMask | MR::ObjectLabel::background_ |
| ViewportMask | MR::ObjectLabel::contour_ |
| ViewportMask | MR::ObjectLabel::leaderLine_ |
| ViewportProperty< Color > | MR::ObjectLabel::sourcePointColor_ |
| ViewportProperty< Color > | MR::ObjectLabel::leaderLineColor_ |
| ViewportProperty< Color > | MR::ObjectLabel::contourColor_ |
| std::string | MR::SymbolMeshParams::text |
| | Text that will be made mesh.
|
| int | MR::SymbolMeshParams::fontDetalization {5} |
| | Detailization of Bezier curves on font glyphs.
|
| Vector2f | MR::SymbolMeshParams::symbolsDistanceAdditionalOffset { 0.0f, 0.0f } |
| float | MR::SymbolMeshParams::symbolsThicknessOffsetModifier { 0.0f } |
| AlignType | MR::SymbolMeshParams::align {AlignType::Left} |
| | alignment of the text inside bbox
|
| std::filesystem::path | MR::SymbolMeshParams::pathToFontFile |
| | Path to font file.
|
| static constexpr float | MR::SymbolMeshParams::MaxGeneratedFontHeight = 5826.0f * 1e-3f |
| | _WIN32
|
| float | MR::ImGuiMenu::hidpiScale_ |
| | Hidpi scaling to be used for text rendering.
|
| float | MR::ImGuiMenu::pixelRatio_ |
| float | MR::ImGuiMenu::userScaling_ = 1.0f |
| | user defined additional scaling modifier
|
| ImGuiContext * | MR::ImGuiMenu::context_ = nullptr |
| | ImGui Context.
|
| ImGuiWindow * | MR::ImGuiMenu::prevFrameFocusPlugin_ = nullptr |
| | last focused plugin window
|
| bool | MR::ImGuiMenu::pollEventsInPreDraw = false |
| | if true, then pre_draw will start from polling glfw events
|
| bool | MR::ImGuiMenu::showShortcuts_ { false } |
| | be careful here with true, this can cause infinite recurse
|
| bool | MR::ImGuiMenu::showStatistics_ { false } |
| long long | MR::ImGuiMenu::frameTimeMillisecThreshold_ { 25 } |
| bool | MR::ImGuiMenu::showRenameModal_ { false } |
| std::string | MR::ImGuiMenu::renameBuffer_ |
| std::string | MR::ImGuiMenu::popUpRenameBuffer_ |
| bool | MR::ImGuiMenu::needModalBgChange_ { false } |
| bool | MR::ImGuiMenu::showInfoModal_ { false } |
| std::string | MR::ImGuiMenu::storedModalMessage_ |
| NotificationType | MR::ImGuiMenu::modalMessageType_ { NotificationType::Error } |
| std::shared_ptr< ShortcutManager > | MR::ImGuiMenu::shortcutManager_ |
| ImVec2 | MR::ImGuiMenu::sceneWindowPos_ |
| ImVec2 | MR::ImGuiMenu::sceneWindowSize_ |
| ImVec2 | MR::ImGuiMenu::mainWindowPos_ |
| ImVec2 | MR::ImGuiMenu::mainWindowSize_ |
| bool | MR::ImGuiMenu::savedDialogPositionEnabled_ { false } |
| std::weak_ptr< Object > | MR::ImGuiMenu::lastRenameObj_ |
| Box3f | MR::ImGuiMenu::selectionLocalBox_ |
| Box3f | MR::ImGuiMenu::selectionWorldBox_ |
| | updated in drawSelectionInformation_
|
| enum MR::ImGuiMenu::CoordType | MR::ImGuiMenu::Local |
| std::string | MR::ImGuiMenu::LabelParams::lastLabel |
| std::string | MR::ImGuiMenu::LabelParams::labelBuffer |
| std::shared_ptr< ObjectLabel > | MR::ImGuiMenu::LabelParams::obj { nullptr } |
| struct MR::ImGuiMenu::LabelParams | MR::ImGuiMenu::oldLabelParams_ |
| bool | MR::ImGuiMenu::allowRemoval_ { true } |
| bool | MR::ImGuiMenu::uniformScale_ { true } |
| bool | MR::ImGuiMenu::xfHistUpdated_ { false } |
| bool | MR::ImGuiMenu::invertedRotation_ { false } |
| std::optional< std::pair< std::string, Vector4f > > | MR::ImGuiMenu::storedColor_ |
| std::string | MR::ImGuiMenu::searchPluginsString_ |
| std::vector< std::shared_ptr< MR::MeshModifier > > | MR::ImGuiMenu::modifiers_ |
| enum MR::ImGuiMenu::ViewportConfigurations | MR::ImGuiMenu::Single |
| bool | MR::ImGuiMenu::selectionChangedToSingleObj_ { false } |
| | flag to correctly update scroll on transform window appearing
|
| ViewportId | MR::ImGuiMenu::selectedViewport_ = {} |
| | menu will change objects' colors in this viewport
|
| std::weak_ptr< Object > | MR::ImGuiMenu::editedFeatureObject_ |
| | When editing feature properties, this is the target object.
|
| AffineXf3f | MR::ImGuiMenu::editedFeatureObjectOldXf_ |
| | When editing feature properties, this is the original xf of the target object, for history purposes.
|
| std::string | MR::ImGuiMenu::TagEditorState::initName |
| std::string | MR::ImGuiMenu::TagEditorState::name |
| bool | MR::ImGuiMenu::TagEditorState::initHasFrontColor = false |
| bool | MR::ImGuiMenu::TagEditorState::hasFrontColor = false |
| ImVec4 | MR::ImGuiMenu::TagEditorState::selectedColor |
| ImVec4 | MR::ImGuiMenu::TagEditorState::unselectedColor |
| TagEditorState | MR::ImGuiMenu::tagEditorState_ |
| bool | MR::ImGuiMenu::showEditTag_ = false |
| | whether to open the Edit Tag modal dialog
|
| std::string | MR::ImGuiMenu::tagNewName_ |
| | buffer string for the tag name input widget
|
| NameTagClickSignal | MR::ImGuiMenu::nameTagClickSignal |
| | This is triggered whenever a name tag of an object is clicked.
|
| DrawSceneUiSignal | MR::ImGuiMenu::drawSceneUiSignal |
| | This is called every frame for every viewport. Use this to draw UI bits on top of the scene.
|
| Color | MR::ImGuiMenu::SelectionInformationStyle::textColor |
| | value text color
|
| Color | MR::ImGuiMenu::SelectionInformationStyle::labelColor |
| | property label color
|
| Color | MR::ImGuiMenu::SelectionInformationStyle::selectedTextColor |
| | selected value text color
|
| float | MR::ImGuiMenu::SelectionInformationStyle::itemWidth {} |
| | value item width
|
| float | MR::ImGuiMenu::SelectionInformationStyle::item2Width {} |
| | value item width for two-segment field
|
| float | MR::ImGuiMenu::SelectionInformationStyle::item3Width {} |
| | value item width for three-segment field
|
| bool | MR::ImGuiMenu::capturedMouse_ { false } |
| BasicUiRenderTask::InteractionMask | MR::ImGuiMenu::UiRenderManagerImpl::consumedInteractions {} |
| | Which things are blocked by our renderUi() calls.
|
| std::unique_ptr< UiRenderManagerImpl > | MR::ImGuiMenu::uiRenderManager_ |
| | This class helps the viewer to renderUi() from IRenderObjects.
|
| std::shared_ptr< SceneObjectsListDrawer > | MR::ImGuiMenu::sceneObjectsList_ |
| std::shared_ptr< ObjectLabel > | MR::AncillaryLabel::obj |
| std::shared_ptr< ObjectLines > | MR::AncillaryLines::obj |
| std::shared_ptr< ObjectMesh > | MR::AncillaryMesh::obj |
| std::shared_ptr< PlaneObject > | MR::AncillaryPlane::obj |
| std::shared_ptr< ObjectPoints > | MR::AncillaryPoints::obj |
| CommandFunc | MR::CommandLoop::Command::func |
| StartPosition | MR::CommandLoop::Command::state { StartPosition::BeforeWindowAppear } |
| std::condition_variable | MR::CommandLoop::Command::callerThreadCV |
| std::thread::id | MR::CommandLoop::Command::threadId |
| int | MR::ShaderWarning::number {0} |
| | number is presented in some of gpu shader compilations output
|
| std::string | MR::ShaderWarning::line |
| | some part of warning line to find
|
| DemoPlugin | MR::DemoPluginInstance |
| Vector3f | MR::DirectionWidget::Arrow::dir |
| | unit direction along arrow
|
| Vector3f | MR::DirectionWidget::Arrow::base |
| | the point from which the arrow starts
|
| float | MR::DirectionWidget::Arrow::length = 1 |
| | the length of the arrow
|
| SelectFileSignal | MR::FileDialogSignals::onOpenFile |
| | called when one file is selected for opening (openFileDialog and openFileDialogAsync)
|
| SelectFilesSignal | MR::FileDialogSignals::onOpenFiles |
| | called when several files are selected for opening (openFilesDialog and openFilesDialogAsync)
|
| SelectFileSignal | MR::FileDialogSignals::onSaveFile |
| | called when file name is selected for saving (saveFileDialog and saveFileDialogAsync)
|
| SelectFolderSignal | MR::FileDialogSignals::onSelectFolder |
| | called when one folder is selected (we do not now differ reason)(openFolderDialog and openFolderDialogAsync)
|
| SelectFoldersSignal | MR::FileDialogSignals::onSelectFolders |
| | called when several folders are selected (we do not now differ reason)(openFoldersDialog)
|
| std::string | MR::FileParameters::fileName |
| | Default filename.
|
| std::filesystem::path | MR::FileParameters::baseFolder {} |
| IOFilters | MR::FileParameters::filters {} |
| bool | MR::FileDialog::Parameters::folderDialog {false} |
| bool | MR::FileDialog::Parameters::multiselect {true} |
| | open dialog only
|
| bool | MR::FileDialog::Parameters::saveDialog {false} |
| | open dialog only
|
| const char * | MR::FileLoadOptions::undoPrefix = "Open " |
| | first part of undo name
|
| ReplaceMode | MR::FileLoadOptions::replaceMode = ReplaceMode::ContructionBased |
| | Determines how to deal with current scene after loading new one.
|
| FilesLoadedCallback | MR::FileLoadOptions::loadedCallback |
| float | MR::BaseFitParams::factor { 1.f } |
| bool | MR::BaseFitParams::snapView { false } |
| FitMode | MR::FitDataParams::mode { FitMode::Visible } |
| std::vector< std::shared_ptr< VisualObject > > | MR::FitDataParams::objsList |
| | fit mode
|
| Box3f | MR::FitBoxParams::worldBox |
| size_t | MR::FrameCounter::totalFrameCounter { 0 } |
| size_t | MR::FrameCounter::swappedFrameCounter { 0 } |
| size_t | MR::FrameCounter::startFrameNum { 0 } |
| size_t | MR::FrameCounter::fps { 0 } |
| std::chrono::duration< double > | MR::FrameCounter::drawTimeMilliSec { 0 } |
| static constexpr GLuint | MR::GlTexture::NO_TEX = 0 |
| Vector3i | MR::GlTexture::Settings::resolution |
| GLint | MR::GlTexture::Settings::internalFormat = GL_RGBA |
| GLint | MR::GlTexture::Settings::format = GL_RGBA |
| GLint | MR::GlTexture::Settings::type = GL_UNSIGNED_BYTE |
| WrapType | MR::GlTexture::Settings::wrap = WrapType::Mirror |
| FilterType | MR::GlTexture::Settings::filter = FilterType::Discrete |
| GLuint | MR::GlTexture::textureID_ = NO_TEX |
| size_t | MR::GlTexture::size_ = 0 |
| GLenum | MR::GlTexture::type_ = NO_TEX |
| Color | MR::MarkedVoxelSlice::Mark::color |
| VoxelBitSet | MR::MarkedVoxelSlice::Mark::mask |
| std::array< Mark, size_t(MaskType::Count)> | MR::MarkedVoxelSlice::Parameters::marks = {Mark{Color::red()},Mark{Color::blue()},Mark{Color::yellow()}} |
| | Base marks.
|
| std::vector< Mark > | MR::MarkedVoxelSlice::Parameters::customBackgroundMarks |
| std::vector< Mark > | MR::MarkedVoxelSlice::Parameters::customForegroundMarks |
| Vector3i | MR::MarkedVoxelSlice::Parameters::activeVoxel |
| | Current voxel.
|
| Box3i | MR::MarkedVoxelSlice::Parameters::activeBox |
| | Active box, set as ObjectVoxels active box in constructor.
|
| float | MR::MarkedVoxelSlice::Parameters::min {0.0f} |
| | Minimum dense to show black.
|
| float | MR::MarkedVoxelSlice::Parameters::max {0.0f} |
| | Maximum dense to show white.
|
| SlicePlane | MR::MarkedVoxelSlice::Parameters::activePlane {XY} |
| | Slice plane.
|
| std::optional< Color > | MR::MarkedVoxelSlice::Parameters::inactiveVoxelColor |
| | if inactiveVoxelColor is set to some color then it will be blended with inactive voxel's color
|
| MR::Color | MR::BoundarySelectionWidget::BoundarySelectionWidgetParams::ordinaryColor = MR::Color::gray() |
| float | MR::BoundarySelectionWidget::BoundarySelectionWidgetParams::ordinaryLineWidth = 3 |
| MR::Color | MR::BoundarySelectionWidget::BoundarySelectionWidgetParams::hoveredColor = MR::Color::green() |
| float | MR::BoundarySelectionWidget::BoundarySelectionWidgetParams::hoveredLineWidth = 4 |
| MR::Color | MR::BoundarySelectionWidget::BoundarySelectionWidgetParams::selectedColor = MR::Color::purple() |
| float | MR::BoundarySelectionWidget::BoundarySelectionWidgetParams::selectedLineWidth = 3 |
| BoundarySelectionWidgetParams | MR::BoundarySelectionWidget::params |
| | configuration params
|
| float | MR::ModalDialogSettings::windowWidth = 0.f |
| | Dialog window width. If the value is zero or negative, defaults to cModalWindowWidth * UI::scale().
|
| std::string | MR::ModalDialogSettings::headline |
| bool | MR::ModalDialogSettings::closeButton = false |
| | Add a close button next in the top right corner of the dialog.
|
| std::string | MR::ModalDialogSettings::text |
| | Render a centered text under the headline.
|
| bool * | MR::ModalDialogSettings::dontShowAgain = nullptr |
| bool | MR::ModalDialogSettings::closeOnClickOutside = false |
| | If set, close the dialog on mouse click outside of it.
|
| std::function< void()> | MR::ModalDialogSettings::onWindowClose |
| | Callback for the window close event.
|
| MouseButton | MR::MouseController::MouseControlKey::btn { MouseButton::Left } |
| int | MR::MouseController::MouseControlKey::mod { 0 } |
| float | MR::MoveObjectByMouseImpl::deadZonePixelRadius_ { 20.0f } |
| AffineXf3f | MR::MoveObjectByMouseImpl::currentXf_ |
| enum MR::MruFormatParameters::MeshFormat | MR::MruFormatParameters::meshFormat = MeshFormat::Ply |
| | ObjectMesh storage format.
|
| enum MR::MruFormatParameters::PointsFormat | MR::MruFormatParameters::pointsFormat = PointsFormat::Ply |
| | ObjectPoints storage format.
|
| enum MR::MruFormatParameters::VoxelsFormat | MR::MruFormatParameters::voxelsFormat = VoxelsFormat::Vdb |
| | ObjectVoxels storage format.
|
| float | MR::TransformControls::VisualParams::radius { -1.0f } |
| float | MR::TransformControls::VisualParams::width { -1.0f } |
| SizeType | MR::TransformControls::VisualParams::sizeType = SizeType::LengthUnit |
| | sets the type of widget size units (metric length or pixels units)
|
| float | MR::TransformControls::VisualParams::coneRadiusFactor { 1.35f } |
| | the product of this factor and width gives cone radius of the arrows
|
| float | MR::TransformControls::VisualParams::coneSizeFactor { 2.2f } |
| | the product of this factor and width gives cone size of the arrows
|
| float | MR::TransformControls::VisualParams::negativeLineExtension { 1.15f } |
| | extension of the translation line in the negative direction relative to the radius
|
| float | MR::TransformControls::VisualParams::positiveLineExtension { 1.3f } |
| | extension of the translation line in the positive direction relative to the radius
|
| std::array< Color, size_t(Axis::Count)> | MR::TransformControls::VisualParams::rotationColors { Color::red(),Color::green(),Color::blue() } |
| | colors of widget
|
| std::array< Color, size_t(Axis::Count)> | MR::TransformControls::VisualParams::translationColors { Color::red(),Color::green(),Color::blue() } |
| Color | MR::TransformControls::VisualParams::helperLineColor { Color::black() } |
| Color | MR::TransformControls::VisualParams::activeLineColor { Color::white() } |
| static const std::vector< Color > | MR::Palette::DefaultColors |
| | preset palette colors: from blue via green to red
|
| float | MR::Palette::Label::value = 0.f |
| std::string | MR::Palette::Label::text |
| | label position according normal scale (from Min to Max)
|
| bool | MR::Palette::Label::isZero = false |
| | label text
|
| std::vector< float > | MR::Palette::Parameters::ranges = { 0.f, 1.f } |
| std::vector< Color > | MR::Palette::Parameters::baseColors |
| | range limits for palette
|
| MinMaxf | MR::Palette::Parameters::legendLimits |
| | palette base colors (need for calculate real colors according discretization)
|
| int | MR::Palette::Parameters::discretization = 7 |
| | if valid - limit legend range
|
| int | MR::Palette::drawDelayFrames_ = 0 |
| int | MR::HoleEdgePoint::holeIdx { -1 } |
| | hole index
|
| MeshEdgePoint | MR::HoleEdgePoint::edgePoint |
| int | MR::PickPointManager::Params::widgetContourCloseMod = getGlfwModPrimaryCtrl() |
| | Modifier key for closing a contour (ordered vector of points) using the widget.
|
| int | MR::PickPointManager::Params::widgetDeletePointMod = GLFW_MOD_SHIFT |
| | Modifier key for deleting a point using the widget.
|
| bool | MR::PickPointManager::Params::writeHistory = true |
| | Whether to write undo history of all operations including public modifying functions and user actions.
|
| std::string | MR::PickPointManager::Params::historyNameSuffix |
| | This is appended to the names of all undo/redo actions.
|
| bool | MR::PickPointManager::Params::startDraggingJustAddedPoint = true |
| | Whether to activate dragging new point immediately after its creation on mouse down.
|
| SurfacePointWidget::Parameters | MR::PickPointManager::Params::surfacePointParams |
| Color | MR::PickPointManager::Params::ordinaryPointColor = Color::gray() |
| | The color of all pick spheres except the one with the largest index on each object.
|
| Color | MR::PickPointManager::Params::lastPointColor = Color::green() |
| | The color of last by index pick sphere in open contour.
|
| Color | MR::PickPointManager::Params::closeContourPointColor = Color::transparent() |
| | The color of last by index pick sphere in closed contour, which coincides in position with the first pick sphere.
|
| Viewport::PickRenderObjectPredicate | MR::PickPointManager::Params::pickPredicate |
| | Predicate to additionally filter objects that should be treated as pickable.
|
| AllowCallBack | MR::PickPointManager::Params::canAddPoint |
| PickerPointCallBack | MR::PickPointManager::Params::onPointAdd |
| | This callback is invoked after a point is added with its index.
|
| AllowCallBack | MR::PickPointManager::Params::canMovePoint |
| PickerPointCallBack | MR::PickPointManager::Params::onPointMoveStart |
| | This callback is invoked when a point starts being dragged.
|
| PickerPointCallBack | MR::PickPointManager::Params::onPointMove |
| | This callback is invoked every time after currently dragged point is moved (in between onPointMoveStart and onPointMoveFinish)
|
| PickerPointCallBack | MR::PickPointManager::Params::onPointMoveFinish |
| | This callback is invoked when point's dragging is completed.
|
| AllowCallBack | MR::PickPointManager::Params::canRemovePoint |
| PickerPointCallBack | MR::PickPointManager::Params::onPointRemove |
| | This callback is invoked when a point is removed with its index before deletion.
|
| ChangeObjectCallBack | MR::PickPointManager::Params::onUpdatePoints |
| Params | MR::PickPointManager::params |
| std::weak_ptr< VisualObject > | MR::PickPointManager::ObjectState::objPtr |
| std::vector< PickedPoint > | MR::PickPointManager::ObjectState::pickedPoints |
| boost::signals2::scoped_connection | MR::PickPointManager::ConnectionHolder::onMeshChanged |
| boost::signals2::scoped_connection | MR::PickPointManager::ConnectionHolder::onPointsChanged |
| Vector3f | MR::PointInAllSpaces::screenSpace |
| Vector3f | MR::PointInAllSpaces::viewportSpace |
| ViewportId | MR::PointInAllSpaces::viewportId |
| Vector3f | MR::PointInAllSpaces::clipSpace |
| Vector3f | MR::PointInAllSpaces::cameraSpace |
| Vector3f | MR::PointInAllSpaces::worldSpace |
| | World space: applied model transform to Mesh(Point Cloud) vertices xyz[-inf, inf].
|
| std::shared_ptr< VisualObject > | MR::PointInAllSpaces::obj |
| | Model space: coordinates as they stored in the model of VisualObject.
|
| PointOnFace | MR::PointInAllSpaces::pof |
| ImVec2 | MR::BasicClickableRectUiRenderTask::clickableCornerA |
| | Set those to set the clickable area. Zero both to hovers and clicks.
|
| ImVec2 | MR::BasicClickableRectUiRenderTask::clickableCornerB |
| bool | MR::BasicClickableRectUiRenderTask::enabled = true |
| bool | MR::BasicClickableRectUiRenderTask::isHovered = false |
| | Read these to decide how to render.
|
| bool | MR::BasicClickableRectUiRenderTask::isActive = false |
| float | MR::RenderDimensions::Tolerance::positive = 0 |
| float | MR::RenderDimensions::Tolerance::negative = 0 |
| | Should be positive or zero.
|
| const VisualObject * | MR::RenderDimensions::CommonParams::objectToSelect = nullptr |
| std::string | MR::RenderDimensions::CommonParams::objectName |
| | Optional. If specified, this name is drawn above the measurement.
|
| CommonParams | MR::RenderDimensions::PointParams::common |
| Vector3f | MR::RenderDimensions::PointParams::point |
| ImVec2 | MR::RenderDimensions::PointParams::align = ImVec2( 1, 1 ) |
| | The world point.
|
| std::optional< Vector3f > | MR::RenderDimensions::PointParams::referencePoint |
| | If specified, we're comparing point against this position.
|
| Vector3f | MR::RenderDimensions::PointParams::referenceNormal |
| std::optional< Tolerance > | MR::RenderDimensions::PointParams::tolerance |
| bool | MR::RenderDimensions::PointParams::capIsVisible = true |
| | Whether to draw the cap or not.
|
| CommonParams | MR::RenderDimensions::RadiusParams::common |
| Vector3f | MR::RenderDimensions::RadiusParams::center |
| | The center point.
|
| Vector3f | MR::RenderDimensions::RadiusParams::radiusAsVector = Vector3f( 1, 0, 0 ) |
| | The length of this is the radius. This is also the preferred drawing direction relative to center.
|
| Vector3f | MR::RenderDimensions::RadiusParams::normal = Vector3f( 0, 0, 1 ) |
| | The preferred normal for non-spherical radiuses. The length is ignored, and this is automatically adjusted to be perpendicular to radiusAsVector.
|
| bool | MR::RenderDimensions::RadiusParams::drawAsDiameter = false |
| | Whether we should draw this as a diameter instead of a radius.
|
| bool | MR::RenderDimensions::RadiusParams::isSpherical = false |
| | Whether this is a sphere radius, as opposed to circle/cylinder radius.
|
| float | MR::RenderDimensions::RadiusParams::visualLengthMultiplier = 2 / 3.f |
| CommonParams | MR::RenderDimensions::AngleParams::common |
| Vector3f | MR::RenderDimensions::AngleParams::center |
| | The center point.
|
| std::array< Vector3f, 2 > | MR::RenderDimensions::AngleParams::rays |
| bool | MR::RenderDimensions::AngleParams::isConical = false |
| | Whether this is a conical angle. The middle line between the rays is preserved, but the rays themselves can be rotated.
|
| std::array< bool, 2 > | MR::RenderDimensions::AngleParams::shouldVisualizeRay { true, true } |
| | Whether we should draw a ray from the center point to better visualize the angle. Enable this if there isn't already a line object there.
|
| CommonParams | MR::RenderDimensions::LengthParams::common |
| std::array< Vector3f, 2 > | MR::RenderDimensions::LengthParams::points |
| | The points between which we're measuring.
|
| bool | MR::RenderDimensions::LengthParams::drawAsNegative = false |
| | Whether the distance should be displayed as a negative one.
|
| std::optional< int > | MR::RenderDimensions::LengthParams::onlyOneAxis |
| | If set, use only once axis (with this index, 0..2) instead of euclidean.
|
| std::optional< float > | MR::RenderDimensions::LengthParams::referenceValue |
| | If set, we're comparing the distance with a reference value.
|
| std::optional< Tolerance > | MR::RenderDimensions::LengthParams::tolerance |
| | Tolerances. Only make sense if referenceValue is set.
|
| GLuint | MR::BindVertexAttribArraySettings::program_shader = 0 |
| const char * | MR::BindVertexAttribArraySettings::name = nullptr |
| GlBuffer & | MR::BindVertexAttribArraySettings::buf |
| const char * | MR::BindVertexAttribArraySettings::arr = nullptr |
| size_t | MR::BindVertexAttribArraySettings::arrSize = 0 |
| int | MR::BindVertexAttribArraySettings::baseTypeElementsNumber = 0 |
| bool | MR::BindVertexAttribArraySettings::refresh = false |
| bool | MR::BindVertexAttribArraySettings::forceUse = false |
| bool | MR::BindVertexAttribArraySettings::isColor = false |
| Vector2i | MR::FramebufferData::DrawParams::size |
| WrapType | MR::FramebufferData::DrawParams::wrap { WrapType::Clamp } |
| | size of the viewport that is used in draw function
|
| FilterType | MR::FramebufferData::DrawParams::filter { FilterType::Linear } |
| | wrap type of underlaying textures
|
| bool | MR::FramebufferData::DrawParams::forceSimpleDepthDraw = false |
| | filter type of underlaying textures
|
| float | MR::FramebufferData::DrawParams::simpleDepth = 0.5f |
| | force using simpleDepth for all fragments even if depth texture is present
|
| const ObjectMeshHolder * | MR::RenderMeshObject::objMesh_ |
| int | MR::RenderMeshObject::vertPosSize_ { 0 } |
| int | MR::RenderMeshObject::vertNormalsSize_ { 0 } |
| int | MR::RenderMeshObject::vertColorsSize_ { 0 } |
| int | MR::RenderMeshObject::vertUVSize_ { 0 } |
| int | MR::RenderMeshObject::faceIndicesSize_ { 0 } |
| int | MR::RenderMeshObject::edgeSize_ { 0 } |
| int | MR::RenderMeshObject::selEdgeSize_ { 0 } |
| int | MR::RenderMeshObject::bordersSize_ { 0 } |
| int | MR::RenderMeshObject::pointSize_ { 0 } |
| int | MR::RenderMeshObject::pointValidSize_ { 0 } |
| Vector2i | MR::RenderMeshObject::faceSelectionTextureSize_ |
| Vector2i | MR::RenderMeshObject::faceNormalsTextureSize_ |
| Vector2i | MR::RenderMeshObject::texturePerFaceSize_ |
| GLuint | MR::RenderMeshObject::edgesArrayObjId_ { 0 } |
| GLuint | MR::RenderMeshObject::borderArrayObjId_ { 0 } |
| GlBuffer | MR::RenderMeshObject::borderBuffer_ |
| GLuint | MR::RenderMeshObject::selectedEdgesArrayObjId_ { 0 } |
| GlBuffer | MR::RenderMeshObject::selectedEdgesBuffer_ |
| GLuint | MR::RenderMeshObject::meshArrayObjId_ { 0 } |
| GLuint | MR::RenderMeshObject::meshPickerArrayObjId_ { 0 } |
| GlBuffer | MR::RenderMeshObject::vertPosBuffer_ |
| GlBuffer | MR::RenderMeshObject::vertUVBuffer_ |
| GlBuffer | MR::RenderMeshObject::vertNormalsBuffer_ |
| GlBuffer | MR::RenderMeshObject::vertColorsBuffer_ |
| GlBuffer | MR::RenderMeshObject::facesIndicesBuffer_ |
| GlTexture2 | MR::RenderMeshObject::faceSelectionTex_ |
| GlTexture2 | MR::RenderMeshObject::faceColorsTex_ |
| GlTexture2 | MR::RenderMeshObject::facesNormalsTex_ |
| GlTexture2 | MR::RenderMeshObject::texturePerFace_ |
| GlTexture2DArray | MR::RenderMeshObject::textureArray_ |
| GlTexture2 | MR::RenderMeshObject::edgesTexture_ |
| GlTexture2 | MR::RenderMeshObject::selEdgesTexture_ |
| GlTexture2 | MR::RenderMeshObject::borderTexture_ |
| GlTexture2 | MR::RenderMeshObject::emptyVertsColorTexture_ |
| GlTexture2 | MR::RenderMeshObject::emptyLinesColorTexture_ |
| GlTexture2 | MR::RenderMeshObject::emptyScnLengthColorTexture_ |
| int | MR::RenderMeshObject::maxTexSize_ { 0 } |
| GLuint | MR::RenderMeshObject::pointsArrayObjId_ { 0 } |
| GlBuffer | MR::RenderMeshObject::pointValidBuffer_ |
| bool | MR::RenderMeshObject::dirtyPointPos_ = false |
| uint32_t | MR::RenderMeshObject::dirty_ { 0 } |
| | Marks dirty buffers that need to be uploaded to OpenGL.
|
| bool | MR::RenderMeshObject::dirtyEdges_ { false } |
| | ...
|
| bool | MR::RenderMeshObject::cornerMode_ = false |
| const VisualObject * | MR::RenderNameObject::Task::object = nullptr |
| const UiRenderParams * | MR::RenderNameObject::Task::params = nullptr |
| ImVec2 | MR::RenderNameObject::Task::point |
| ImVec2 | MR::RenderNameObject::Task::point2 |
| ImVec2 | MR::RenderNameObject::Task::textCenter |
| ImGuiMeasurementIndicators::Text | MR::RenderNameObject::Task::text |
| ImVec2 | MR::RenderNameObject::Task::textPos |
| ImVec2 | MR::RenderNameObject::Task::paddingA |
| ImVec2 | MR::RenderNameObject::Task::paddingB |
| ImGuiMeasurementIndicators::Text | MR::RenderNameObject::Task::textExtra |
| float | MR::RenderNameObject::Task::textToExtraTextSpacing = 0 |
| Vector3f | MR::RenderNameObject::nameUiPoint |
| | The line attachment point.
|
| bool | MR::RenderNameObject::nameUiPointIsRelativeToBoundingBoxCenter = true |
| Vector3f | MR::RenderNameObject::nameUiLocalOffset |
| | Which way the name is moved relative to the point, in model space. The length is respected.
|
| Vector2f | MR::RenderNameObject::nameUiScreenOffset |
| std::optional< Vector3f > | MR::RenderNameObject::nameUiRotateToScreenPlaneAroundSphereCenter |
| bool | MR::RenderNameObject::nameUiRotateLocalOffset90Degrees = false |
| enum MR::DrawButtonParams::SizeType | MR::DrawButtonParams::Big |
| ImVec2 | MR::DrawButtonParams::itemSize |
| | type of button to draw
|
| float | MR::DrawButtonParams::iconSize { 0.f } |
| | size of whole item group, needed for all, this should respect system scaling
|
| enum MR::DrawButtonParams::RootType | MR::DrawButtonParams::Ribbon |
| bool | MR::DrawButtonParams::forceHovered = false |
| | if true treat this item as hovered
|
| bool | MR::DrawButtonParams::forcePressed = false |
| | if true treat this item as pressed
|
| bool * | MR::DrawButtonParams::isPressed = nullptr |
| | set true if item pressed
|
| std::function< int(bool, bool)> | MR::CustomButtonParameters::pushColorsCb |
| | if not set push default ribbon colors
|
| RibbonIcons::IconType | MR::CustomButtonParameters::iconType |
| float | MR::RibbonButtonDrawer::ButtonItemWidth::baseWidth { 0.0f } |
| float | MR::RibbonButtonDrawer::ButtonItemWidth::additionalWidth { 0.0f } |
| constexpr float | MR::cGradientButtonFramePadding = 7.5f |
| constexpr float | MR::cTabYOffset = 4.0f |
| constexpr float | MR::cTabsInterval = 8.0f |
| constexpr float | MR::cTabFrameRounding = 5.0f |
| constexpr float | MR::cTabMinimumWidth = 68.0f |
| constexpr float | MR::cTabHeight = 28.0f |
| constexpr float | MR::cTabLabelMinPadding = 12.0f |
| constexpr float | MR::cTopPanelScrollStep = 50.0f |
| constexpr float | MR::cTopPanelScrollBtnSize = 20.0f |
| constexpr float | MR::cTopPanelAditionalButtonSize = cTabHeight - cTabYOffset |
| constexpr float | MR::cSeparateBlocksSpacing = 12.0f |
| constexpr float | MR::cSeparatorIndentMultiplier = 0.67f |
| constexpr float | MR::cRibbonItemInterval = 4.0f |
| constexpr float | MR::cRibbonItemMinWidth = 86.0f |
| constexpr float | MR::cRibbonButtonWindowPaddingX = 6.0f |
| constexpr float | MR::cRibbonButtonWindowPaddingY = 4.0f |
| constexpr float | MR::cCheckboxPadding = 2.0f |
| constexpr float | MR::cButtonPadding = 8.0f |
| constexpr float | MR::cInputPadding = 9.0f |
| constexpr float | MR::cDefaultItemSpacing = 8.0f |
| constexpr float | MR::cDefaultInnerSpacing = 8.0f |
| constexpr float | MR::cDefaultWindowPaddingX = 8.0f |
| constexpr float | MR::cDefaultWindowPaddingY = 12.0f |
| constexpr float | MR::cItemInfoIndent = 16.0f |
| constexpr float | MR::cSmallItemDropSizeModifier = 0.5f |
| constexpr float | MR::cHeaderQuickAccessFrameRounding = 3.0f |
| constexpr float | MR::cHeaderQuickAccessXSpacing = 12.0f |
| constexpr float | MR::cHeaderQuickAccessIconSize = 14.0f |
| constexpr float | MR::cHeaderQuickAccessFrameSize = 24.0f |
| constexpr float | MR::cMiddleIconSize = 15.0f |
| constexpr float | MR::cSmallIconSize = 10.0f |
| constexpr float | MR::cQuickAccessBarHeight = 40.0f |
| constexpr float | MR::cScrollBarSize = 10.0f |
| constexpr float | MR::cBigIconSize = 20.0f |
| constexpr int | MR::cSmallFontSize = 11 |
| constexpr int | MR::cMiddleFontSize = 12 |
| constexpr int | MR::cDefaultFontSize = 13 |
| constexpr int | MR::cBigFontSize = 15 |
| constexpr int | MR::cHeadlineFontSize = 20 |
| constexpr float | MR::cRadioButtonSize = 20.0f |
| constexpr float | MR::cModalWindowWidth = 368.0f |
| constexpr float | MR::cModalWindowPaddingX = 28.0f |
| constexpr float | MR::cModalWindowPaddingY = 20.0f |
| constexpr float | MR::cModalButtonWidth = 104.0f |
| const float | MR::cRadioInnerSpacingX = 12.f |
| constexpr Vector2f | MR::StyleConsts::pluginItemSpacing { 8, 10 } |
| constexpr float | MR::StyleConsts::Modal::bigTitlePadding = 22.0f |
| constexpr float | MR::StyleConsts::Modal::exitBtnSize = 24.0f |
| constexpr float | MR::StyleConsts::ProgressBar::internalSpacing = 16.0f |
| constexpr float | MR::StyleConsts::ProgressBar::rounding = 8.0f |
| constexpr Color | MR::StyleConsts::ProgressBar::textColor = Color( 117, 125, 136 ) |
| constexpr Vector2f | MR::StyleConsts::CustomCombo::framePadding { 13, 8 } |
| constexpr float | MR::StyleConsts::Notification::cWindowRounding = 4.f |
| constexpr float | MR::StyleConsts::Notification::cWindowSpacing = 20.f |
| constexpr float | MR::StyleConsts::Notification::cWindowBorderWidth = 2.f |
| constexpr float | MR::StyleConsts::Notification::cWindowPadding = 16.f |
| constexpr float | MR::StyleConsts::Notification::cNotificationWindowPaddingX = 10.f |
| constexpr float | MR::StyleConsts::Notification::cNotificationWindowPaddingY = 10.f |
| constexpr float | MR::StyleConsts::Notification::cWindowsPosY = 95.f |
| constexpr float | MR::StyleConsts::Notification::cHistoryButtonSizeY = 28.0f |
| constexpr Vector2f | MR::StyleConsts::Notification::cTextFramePadding { 30, 8 } |
| constexpr float | MR::StyleConsts::Notification::cTextFrameRounding = 8.0f |
| FontFile | MR::RibbonFontManager::FontData::fontFile { FontFile::RegularSC } |
| Vector2f | MR::RibbonFontManager::FontData::scaledOffset |
| | what file type to use for this font
|
| ImFont * | MR::RibbonFontManager::FontData::fontPtr { nullptr } |
| | offset that is used for each glyph while creating atlas (updates in updateFontsScaledOffset_), should respect font size with scaling
|
| std::unique_ptr< ImGuiImage > | MR::RibbonIcons::Icons::colored |
| std::unique_ptr< ImGuiImage > | MR::RibbonIcons::Icons::white |
| std::filesystem::path | MR::RibbonIcons::IconTypeData::pathDirectory |
| std::pair< Sizes, Sizes > | MR::RibbonIcons::IconTypeData::minMaxSizes |
| | first - min size, second - max size
|
| AvailableColor | MR::RibbonIcons::IconTypeData::availableColor = AvailableColor::White |
| HashMap< std::string, SizedIcons > | MR::RibbonIcons::IconTypeData::map |
| std::optional< RibbonMenuUIConfig > | MR::RibbonConfig::menuUIConfig |
| std::optional< Color > | MR::RibbonConfig::monochromeRibbonIcons |
| std::optional< Json::Value > | MR::RibbonConfig::colorTheme |
| | if present all ribbon items will be drawn with this monochrome color (if available)
|
| std::optional< Json::Value > | MR::RibbonConfig::ribbonStructure |
| | if present will be applied
|
| std::optional< Json::Value > | MR::RibbonConfig::ribbonItemsOverrides |
| | analogue for ui.json file, if present will replace current layout
|
| Setter | MR::RibbonMenu::CustomContextMenuCheckbox::setter |
| Getter | MR::RibbonMenu::CustomContextMenuCheckbox::getter |
| SelectedTypesMask | MR::RibbonMenu::CustomContextMenuCheckbox::selectedMask = SelectedTypesMask( -1 ) |
| TabChangedSignal | MR::RibbonMenu::tabChangedSignal |
| | this signal is called when active tab changes
|
| int | MR::RibbonMenu::DrawGroupConfig::numBig { 0 } |
| int | MR::RibbonMenu::DrawGroupConfig::numSmallText { 0 } |
| int | MR::RibbonMenu::DrawGroupConfig::numSmall { 0 } |
| std::shared_ptr< RibbonMenuItem > | MR::RibbonMenu::DialogItemPtr::item |
| bool | MR::RibbonMenu::DialogItemPtr::dialogPositionFixed { false } |
| | this flag is needed to correctly fix position of UI dialog (temporary, while plugin dialogs are floating in viewport)
|
| DialogItemPtr | MR::RibbonMenu::activeBlockingItem_ |
| std::vector< DialogItemPtr > | MR::RibbonMenu::activeNonBlockingItems_ |
| std::vector< std::shared_ptr< const Object > > | MR::RibbonMenu::prevFrameSelectedObjectsCache_ |
| RibbonMenuSearch | MR::RibbonMenu::searcher_ |
| RibbonItemType | MR::RibbonMenuItem::type_ { RibbonItemType::Button } |
| DropItemsList | MR::RibbonMenuItem::dropList_ |
| RibbonButtonDrawer & | MR::RibbonMenuSearch::Parameters::btnDrawer |
| RibbonFontManager & | MR::RibbonMenuSearch::Parameters::fontManager |
| std::function< void(int)> | MR::RibbonMenuSearch::Parameters::changeTabFunc |
| Signal< void()> | MR::RibbonMenuSearch::onFocusSignal |
| | this signal is emitted when search bar is focused
|
| Signal< void(std::shared_ptr< RibbonMenuItem >)> | MR::RibbonMenuSearch::onToolActivateSignal |
| | this signal is emitted when tool is activated within search
|
| RibbonTopPanelLayoutMode | MR::RibbonMenuUIConfig::topLayout { RibbonTopPanelLayoutMode::RibbonWithTabs } |
| | how to show top panel
|
| bool | MR::RibbonMenuUIConfig::centerRibbonItems { false } |
| | if true - items on selected tab will be centered to have equal spacing from left and right (ignored top panel is hidden)
|
| bool | MR::RibbonMenuUIConfig::drawScenePanel { true } |
| | if false - panel with scene tree, information and transform will be hidden
|
| bool | MR::RibbonMenuUIConfig::drawToolbar { true } |
| | if false - toolbar will be hidden (ignored if top panel is hidden)
|
| bool | MR::RibbonMenuUIConfig::drawViewportTags { true } |
| | if false - window with viewport label and id will be hidden
|
| bool | MR::RibbonMenuUIConfig::drawNotifications { true } |
| | if false - no notifications are drawn on screen
|
| bool | MR::RibbonMenuUIConfig::drawSearchBar { true } |
| | if false - hides search bar at the header panel of ribbon
|
| std::string | MR::RibbonMenuUIConfig::helpLink = "https:/// meshinspector.com/inapphelp/" |
| | help btn leads to this page, if empty - no help btn is drawn
|
| OnButtonClick | MR::RibbonNotification::onButtonClick |
| std::string | MR::RibbonNotification::buttonName = "OK" |
| | Name of button that will be drawn if callback is enabled.
|
| std::string | MR::RibbonNotification::header |
| | Header of notification.
|
| std::string | MR::RibbonNotification::text |
| | Text of notification.
|
| NotificationType | MR::RibbonNotification::type { NotificationType::Info } |
| | Type of notification.
|
| float | MR::RibbonNotification::lifeTimeSec = -1.0f |
| NotificationTagMask | MR::RibbonNotification::tags = NotificationTags::All |
| | it ANDs with RibbonNotifier allowed tags to see if notification should be displayed
|
| float | MR::RibbonNotifier::defaultNotificationLifeTimeSeconds = 5.0f |
| | this value is used as notification lifeTimeSec if negative values passed
|
| NotificationTagMask | MR::RibbonNotifier::allowedTagMask = NotificationTags::Default |
| | this mask is used to control allowed notifications by filtering with tags
|
| RibbonNotificationCorner | MR::RibbonNotifier::cornerPosition = RibbonNotificationCorner::LowerLeft |
| | position of notifications on screen
|
| RibbonNotification | MR::RibbonNotifier::NotificationWithTimer::notification |
| float | MR::RibbonNotifier::NotificationWithTimer::timer { 0.0f } |
| int | MR::RibbonNotifier::NotificationWithTimer::sameCounter = 1 |
| int | MR::RibbonNotifier::DrawNotificationSettings::index { 0 } |
| float | MR::RibbonNotifier::DrawNotificationSettings::width { 0.0f } |
| bool | MR::RibbonNotifier::DrawNotificationSettings::historyMode { false } |
| Vector2f * | MR::RibbonNotifier::DrawNotificationSettings::currentPos { nullptr } |
| Signal< void()> | MR::RibbonSceneObjectsListDrawer::onDrawContextSignal |
| | this signal is emitted each frame inside scene context window
|
| float | MR::RibbonSceneObjectsListDrawer::LastDepthInfo::screenPosY { 0.0f } |
| int | MR::RibbonSceneObjectsListDrawer::LastDepthInfo::id { 0 } |
| float | MR::MenuItemCaptionSize::baseSize { 0.0f } |
| SplitCaptionInfo | MR::MenuItemCaptionSize::splitInfo |
| std::shared_ptr< RibbonMenuItem > | MR::MenuItemInfo::item |
| std::string | MR::MenuItemInfo::caption |
| std::string | MR::MenuItemInfo::tooltip |
| std::string | MR::MenuItemInfo::icon |
| MenuItemCaptionSize | MR::MenuItemInfo::captionSize |
| std::string | MR::MenuItemInfo::helpLink |
| | already scaled
|
| int | MR::MenuItemInfo::localeDomainId = -1 |
| | link to help page
|
| std::string | MR::RibbonTab::name |
| int | MR::RibbonTab::priority { 0 } |
| bool | MR::RibbonTab::experimental { false } |
| std::vector< RibbonTab > | MR::RibbonSchema::tabsOrder |
| TabsGroupsMap | MR::RibbonSchema::tabsMap |
| GroupsItemsMap | MR::RibbonSchema::groupsMap |
| ItemMap | MR::RibbonSchema::items |
| MenuItemsList | MR::RibbonSchema::defaultQuickAccessList |
| MenuItemsList | MR::RibbonSchema::headerQuickAccessList |
| MenuItemsList | MR::RibbonSchema::sceneButtonsList |
| int | MR::RibbonSchemaHolder::SearchResult::tabIndex { -1 } |
| const MenuItemInfo * | MR::RibbonSchemaHolder::SearchResult::item { nullptr } |
| | -1 is default value if item has no tab
|
| float | MR::RibbonSchemaHolder::SearchResultWeight::captionWeight { 1.f } |
| float | MR::RibbonSchemaHolder::SearchResultWeight::captionOrderWeight { 1.f } |
| float | MR::RibbonSchemaHolder::SearchResultWeight::tooltipWeight { 1.f } |
| float | MR::RibbonSchemaHolder::SearchResultWeight::tooltipOrderWeight { 1.f } |
| int * | MR::RibbonSchemaHolder::SearchParams::captionCount = nullptr |
| | gets the number of matches in the captions
|
| std::vector< SearchResultWeight > * | MR::RibbonSchemaHolder::SearchParams::weights = nullptr |
| | returns the coefficients of matching the search string for each tool found
|
| RequirementsFunction | MR::RibbonSchemaHolder::SearchParams::requirementsFunc = {} |
| | sort the results according to the launch capability (empty requirements)
|
| bool | MR::SaveObjectSettings::backupOriginalFile = false |
| | if true then before saving, original files is renamed, and renamed back if saving fails
|
| ProgressCallback | MR::SaveObjectSettings::callback |
| | callback function to set progress (for progress bar)
|
| ObjectList< ObjectType > | MR::SceneCache::VectorHolder< ObjectType, SelectivityType >::value |
| bool | MR::SceneObjectsListDrawer::showNewSelectedObjects_ = true |
| bool | MR::SceneObjectsListDrawer::deselectNewHiddenObjects_ = false |
| int | MR::SceneObjectsListDrawer::MoveAndScrollData::index = -1 |
| float | MR::SceneObjectsListDrawer::MoveAndScrollData::posY = -1.f |
| | index of new selected object in list of all
|
| bool | MR::SceneObjectsListDrawer::MoveAndScrollData::needScroll = false |
| | scroll position of new selected object in list of all
|
| float | MR::SceneObjectsListDrawer::ScrollPositionPreservation::relativeMousePos { 0.0f } |
| float | MR::SceneObjectsListDrawer::ScrollPositionPreservation::absLinePosRatio { 0.0f } |
| std::unordered_map< const Object *, bool > | MR::SceneObjectsListDrawer::sceneOpenCommands_ |
| constexpr int | MR::sDefaultGroupState = 0 |
| std::shared_ptr< Object > | MR::FlatTree::root |
| std::vector< std::shared_ptr< Object > > | MR::FlatTree::subobjects |
| std::shared_ptr< Object > | MR::TypedFlatTree::root |
| std::vector< std::shared_ptr< ObjectMesh > > | MR::TypedFlatTree::objsMesh |
| std::vector< std::shared_ptr< ObjectLines > > | MR::TypedFlatTree::objsLines |
| std::vector< std::shared_ptr< ObjectPoints > > | MR::TypedFlatTree::objsPoints |
| std::vector< Object * > | MR::SceneReorder::who |
| | objects that will be moved
|
| Object * | MR::SceneReorder::to { nullptr } |
| | target object
|
| bool | MR::SceneReorder::before { false } |
| std::string | MR::SceneReorder::historyName { "Reorder Scene" } |
| | the name of added undo history scope
|
| std::function< void()> | MR::ViewerSetup::setupCustomLogSink |
| | functor to setup custom log sink, i.e. sending logs to web
|
| std::function< void()> | MR::ViewerSetup::shutdownCustomLogSink |
| | functor to shutdown custom log sink, i.e. send all remaining logs to web before exit
|
| std::filesystem::path | MR::ViewerSetup::LoadedModule::filename |
| int | MR::ShortcutKey::key { 0 } |
| int | MR::ShortcutKey::mod { 0 } |
| Category | MR::ShortcutManager::ShortcutCommand::category |
| std::string | MR::ShortcutManager::ShortcutCommand::name |
| std::function< void()> | MR::ShortcutManager::ShortcutCommand::action |
| | name of action
|
| bool | MR::ShortcutManager::ShortcutCommand::repeatable = true |
| static const std::string | MR::ShortcutManager::categoryNames [6] = { "Info", "Edit", "View", "Scene", "Objects", "Selection " } |
| bool | MR::ShortcutManager::enabled_ { true } |
| ShourtcutsMap | MR::ShortcutManager::map_ |
| ShourtcutsBackMap | MR::ShortcutManager::backMap_ |
| std::optional< ShortcutList > | MR::ShortcutManager::listCache_ |
| std::string | MR::SplashWindow::name_ |
| GLFWwindow * | MR::SplashWindow::window_ { nullptr } |
| ImGuiContext * | MR::SplashWindow::guiContext_ { nullptr } |
| std::atomic< bool > | MR::SplashWindow::terminate_ { false } |
| std::string | MR::StateBasePlugin::plugin_name |
| bool | MR::StateBasePlugin::isEnabled_ {false} |
| bool | MR::StateBasePlugin::dialogIsOpen_ {false} |
| bool | MR::StateBasePlugin::dialogIsCollapsed_ { false } |
| StatePluginTabs | MR::StateBasePlugin::tab_ {StatePluginTabs::Other} |
| bool | MR::PluginCloseOnChangeMesh::meshChanged_ { false } |
| | plugin can return the value to false after mesh change if it changed the mesh by itself and does not want to close
|
| bool | MR::PluginCloseOnChangePointCloud::pointCloudChanged_ { false } |
| | plugin can return the value to false after points change if it changed the mesh by itself and does not want to close
|
| WorkMode | MR::SurfaceManipulationWidget::Settings::workMode = WorkMode::Add |
| float | MR::SurfaceManipulationWidget::Settings::radius = 1.f |
| | radius of editing region
|
| float | MR::SurfaceManipulationWidget::Settings::relaxForce = 0.2f |
| | speed of relaxing, typical values (0 - 0.5]
|
| float | MR::SurfaceManipulationWidget::Settings::editForce = 1.f |
| | material thickness added or removed to the surface
|
| float | MR::SurfaceManipulationWidget::Settings::sharpness = 50.f |
| | effect of force on points far from center editing area. [0 - 100]
|
| float | MR::SurfaceManipulationWidget::Settings::relaxForceAfterEdit = 0.25f |
| | force of relaxing modified area after editing (add / remove) is complete. [0 - 0.5], 0 - not relax
|
| EdgeWeights | MR::SurfaceManipulationWidget::Settings::edgeWeights = EdgeWeights::Cotan |
| | edge weights for Laplacian and Patch
|
| VertexMass | MR::SurfaceManipulationWidget::Settings::vmass = VertexMass::NeiArea |
| | vertex weights for Laplacian and Patch
|
| bool | MR::SurfaceManipulationWidget::Settings::laplacianBasedAddRemove = false |
| | if true in Add/Remove modes, the modification will be done using Laplacian solver, where the closest vertices will be attracted toward mouse cursor to form ideal ridges or grooves
|
| bool | MR::SurfaceManipulationWidget::Settings::subdivideGrooves = false |
| | if true in Add/Remove modes, changed parts of mesh will be subdivided on mouse up
|
| Settings | MR::SurfaceManipulationWidget::settings_ |
| std::shared_ptr< ObjectMesh > | MR::SurfaceManipulationWidget::obj_ |
| VertBitSet | MR::SurfaceManipulationWidget::unchangeableVerts_ |
| float | MR::SurfaceManipulationWidget::minRadius_ = 1.f |
| Vector2f | MR::SurfaceManipulationWidget::mousePos_ |
| | mouse position of last updateRegion_
|
| std::vector< MeshTriPoint > | MR::SurfaceManipulationWidget::pointsUnderMouse_ |
| | mesh points under mouse in the current frame (could be many in case of fast mouse movement)
|
| VertBitSet | MR::SurfaceManipulationWidget::singleEditingRegion_ |
| | current (under the cursor) region of tool application
|
| VertBitSet | MR::SurfaceManipulationWidget::visualizationRegion_ |
| | vertices of triangles partially or fully highlighted with red
|
| VertBitSet | MR::SurfaceManipulationWidget::generalEditingRegion_ |
| | united region of tool application since the last mouse down
|
| VertScalars | MR::SurfaceManipulationWidget::pointsShift_ |
| VertScalars | MR::SurfaceManipulationWidget::editingDistanceMap_ |
| VertScalars | MR::SurfaceManipulationWidget::visualizationDistanceMap_ |
| VertScalars | MR::SurfaceManipulationWidget::valueChanges_ |
| VertScalars | MR::SurfaceManipulationWidget::lastStableValueChanges_ |
| std::shared_ptr< Mesh > | MR::SurfaceManipulationWidget::originalMesh_ |
| | original input mesh
|
| VertBitSet | MR::SurfaceManipulationWidget::unknownSign_ |
| | cached data to avoid reallocating memory
|
| std::shared_ptr< ObjectMesh > | MR::SurfaceManipulationWidget::lastStableObjMesh_ |
| bool | MR::SurfaceManipulationWidget::firstInit_ = true |
| bool | MR::SurfaceManipulationWidget::badRegion_ = false |
| | need to save settings in re-initial
|
| bool | MR::SurfaceManipulationWidget::mousePressed_ = false |
| | in selected region less than 3 points
|
| boost::signals2::scoped_connection | MR::SurfaceManipulationWidget::meshChangedConnection_ |
| bool | MR::SurfaceManipulationWidget::ownMeshChangedSignal_ = false |
| bool | MR::SurfaceManipulationWidget::connectionsInitialized_ = false |
| VertId | MR::SurfaceManipulationWidget::touchVertId_ |
| | Laplacian.
|
| Vector3f | MR::SurfaceManipulationWidget::touchVertIniPos_ |
| | we fix this vertex in Laplacian and move it manually
|
| Vector2i | MR::SurfaceManipulationWidget::storedDown_ |
| | initial position of fixed vertex
|
| std::unique_ptr< Laplacian > | MR::SurfaceManipulationWidget::laplacian_ |
| VertBitSet | MR::SurfaceManipulationWidget::pickedVerts_ |
| | these are all vertices, which will are attracted to be under mouse considering material width since last mouse down
|
| Vector3f | MR::SurfaceManipulationWidget::PickedVertData::target |
| float | MR::SurfaceManipulationWidget::PickedVertData::minMouseDistSq = FLT_MAX |
| | attraction point
|
| HashMap< VertId, PickedVertData > | MR::SurfaceManipulationWidget::pickedVertsToData_ |
| | same vertices as in pickedVerts_ mapped to PickedVertData
|
| std::shared_ptr< VersatileChangeMeshPointsAction > | MR::SurfaceManipulationWidget::historyAction_ |
| bool | MR::SurfaceManipulationWidget::appendHistoryAction_ = false |
| | true if historyAction_ is prepared but not yet appended to HistoryStore, which is done on first mouse move
|
| std::shared_ptr< Palette > | MR::SurfaceManipulationWidget::palette_ |
| bool | MR::SurfaceManipulationWidget::enableDeviationTexture_ = false |
| DeviationCalculationMethod | MR::SurfaceManipulationWidget::deviationCalculationMethod_ = DeviationCalculationMethod::ExactDistance |
| bool | MR::SurfaceManipulationWidget::sameOriginalMeshTopology_ = true |
| bool | MR::SurfaceManipulationWidget::ignoreOcclusion_ = false |
| | allow the user to edit parts of object that are hidden in the current view by other objects
|
| bool | MR::SurfaceManipulationWidget::editOnlyCodirectedSurface_ = true |
| PositionType | MR::SurfacePointWidget::Parameters::positionType { PositionType::Faces } |
| | type of point positioning, look at PositionType comments for more info
|
| Color | MR::SurfacePointWidget::Parameters::baseColor { Color::gray() } |
| | basic color of control sphere
|
| Color | MR::SurfacePointWidget::Parameters::hoveredColor { Color::red() } |
| | color of control sphere when it is hovered by mouse
|
| Color | MR::SurfacePointWidget::Parameters::activeColor { { Color::red() } } |
| | color of control sphere when it is in move
|
| PointSizeType | MR::SurfacePointWidget::Parameters::radiusSizeType { PointSizeType::Pixel } |
| | how to set the size of the dots in mm or in pixels.
|
| float | MR::SurfacePointWidget::Parameters::radius { 0.0f } |
| int | MR::SurfacePointWidget::Parameters::customModifiers = 0 |
| bool | MR::SurfacePointWidget::Parameters::pickInBackFaceObject = true |
| | pick_render_object parameters. Allow to use object in which pick exactly fell, instead of closer object in pick radius.
|
| int | MR::TouchesController::Info::id {-1} |
| Vector2f | MR::TouchesController::Info::position |
| bool | MR::TouchpadParameters::ignoreKineticMoves = false |
| | most touchpads implement kinetic (or inertial) scrolling, this option disables handling of these events
|
| bool | MR::TouchpadParameters::cancellable = false |
| | enable gesture's cancellability, i.e. revert its changes in case of external interruption
|
| enum MR::TouchpadParameters::SwipeMode | MR::TouchpadParameters::swipeMode = SwipeMode::SwipeRotatesCamera |
| std::string | MR::UI::SaveChangesPopupSettings::shortCloseText = "Close" |
| | text that is shown if we have nothing to save
|
| std::string | MR::UI::SaveChangesPopupSettings::dontSaveText = "Don't Save" |
| | text that is shown if we have changes but don't want to save them
|
| std::string | MR::UI::SaveChangesPopupSettings::saveTooltip = "Save current scene" |
| std::string | MR::UI::SaveChangesPopupSettings::dontSaveTooltip = "Donh't save current scene" |
| std::string | MR::UI::SaveChangesPopupSettings::cancelTooltip = "Cansel" |
| std::string | MR::UI::SaveChangesPopupSettings::header |
| | header that is used in dialog
|
| std::function< void()> | MR::UI::SaveChangesPopupSettings::onOk = {} |
| | if not empty this function is called on "save" and "not save" options( if succeed )
|
| bool | MR::UI::ButtonCustomizationParams::enabled = true |
| | If false, the button is grayed out and can't be clicked.
|
| ImGuiButtonFlags | MR::UI::ButtonCustomizationParams::flags = ImGuiButtonFlags_None |
| | imgui flags for this button
|
| ImGuiImage * | MR::UI::ButtonCustomizationParams::customTexture = nullptr |
| bool | MR::UI::ButtonCustomizationParams::forceImGuiBackground = false |
| | force use imgui background if !customTexture
|
| bool | MR::UI::ButtonCustomizationParams::forceImguiTextColor = false |
| | force use if ImGuiCol_Text for text
|
| bool | MR::UI::ButtonCustomizationParams::border = false |
| | show border or not
|
| bool | MR::UI::ButtonCustomizationParams::underlineFirstLetter = false |
| | draw line under first letter of label
|
| bool | MR::UI::ButtonCustomizationParams::enableTestEngine = true |
| | Allow interacting with this button from UI::TestEngine.
|
| std::string | MR::UI::ButtonCustomizationParams::testEngineName |
| | if not empty, force use this string as name in TestEngine
|
| ButtonCustomizationParams | MR::UI::ButtonIconCustomizationParams::baseParams |
| | basic customization parameters
|
| bool | MR::UI::ButtonIconCustomizationParams::textUnderImage = true |
| | if false - text is to the right
|
| ImVec2 | MR::UI::PlotAxis::startAxisPoint |
| | the point from which the axes will be drawn
|
| float | MR::UI::PlotAxis::size = 100.f |
| | size plot by axis
|
| float | MR::UI::PlotAxis::optimalLenth = 10.0f |
| | optimal length between dashes
|
| float | MR::UI::PlotAxis::minValue = 0.0f |
| | the minimum value of the axis
|
| float | MR::UI::PlotAxis::maxValue = 1.0f |
| | the maximal value of the axis
|
| size_t | MR::UI::PlotAxis::textDashIndicesStep = 1 |
| | sign every nth dash
|
| float | MR::UI::PlotAxis::lenDash = 8.0f |
| | length dash without text
|
| float | MR::UI::PlotAxis::lenDashWithText = 12.0f |
| | length dash with text
|
| float | MR::UI::PlotAxis::textPadding = 3.0f |
| | text offset from dash
|
| VarUnitToStringParams | MR::UI::PlotAxis::labelFormatParams |
| | the format of the text for labels
|
| bool | MR::UI::CheckboxOrModifierState::baseValue = false |
| | The persistent value of this setting, as set by the user by clicking the checkbox.
|
| bool | MR::UI::CheckboxOrModifierState::modifierHeld = false |
| | Whether the setting is currently inverted because the modifier is held.
|
| int | MR::UI::RadioButtonOrModifierState::value {} |
| | The permanent value of this setting, as set by the user by clicking the radio button.
|
| int | MR::UI::RadioButtonOrModifierState::effectiveValue {} |
| | The value that is displayed, and to be used - can differ from value if modifiers are pressed.
|
| std::optional< ImVec2 > | MR::UI::CachedTextSize::cachedSize |
| constexpr int | MR::UI::defaultSliderFlags = ImGuiSliderFlags_AlwaysClamp |
| | Default flags for slider() and drag() below.
|
| const ImGuiImage * | MR::UI::SeparatorParams::icon { nullptr } |
| | optional icon in the left part of separator
|
| Vector2f | MR::UI::SeparatorParams::iconSize |
| | size of icon
|
| std::string | MR::UI::SeparatorParams::label |
| | label at the left part of separator (drawn after icon if present)
|
| std::string | MR::UI::SeparatorParams::suffix |
| | framed text after label (might be used for some indications)
|
| std::optional< Color > | MR::UI::SeparatorParams::suffixFrameColor |
| | color of background frame behind suffix (if not present default ImGuiCol_FrameBg is used)
|
| bool | MR::UI::SeparatorParams::forceImGuiSpacing = false |
| float | MR::UI::SeparatorParams::extraScale = 1 |
| | The spacing is multiplied by this.
|
| std::string | MR::UI::CustomConfigModalSettings::configName |
| | Name of desired config type.
|
| std::string | MR::UI::CustomConfigModalSettings::imGuiIdKey |
| | Optional string added at the end of popup name to have unique names.
|
| std::filesystem::path | MR::UI::CustomConfigModalSettings::configDirectory |
| | Directory where to save config.
|
| std::string * | MR::UI::CustomConfigModalSettings::inputName { nullptr } |
| | String used by input.
|
| bool | MR::UI::CustomConfigModalSettings::inputNameDialog = true |
| | If false, inputName is used (if inputName is nullptr this option is not used)
|
| bool | MR::UI::CustomConfigModalSettings::triggerSave = false |
| | if true - opens modal in this frame, or saves if (!inputNameDialog && inputName)
|
| bool | MR::UI::CustomConfigModalSettings::warnExisting = true |
| | If true - warns user before overriding existing file, otherwise override without warning.
|
| std::function< bool(const std::string &name)> | MR::UI::CustomConfigModalSettings::onSave |
| | Callback that is called when save is requested->returns true if file saved successfully (to close modal)
|
| std::string_view | MR::UnitToStringParams< E >::decorationFormatString = "{}" |
| std::optional< E > | MR::UnitToStringParams< E >::sourceUnit = getDefaultUnitParams<E>().sourceUnit |
| | — Units:
|
| std::optional< E > | MR::UnitToStringParams< E >::targetUnit = getDefaultUnitParams<E>().targetUnit |
| | The measurement unit of the resulting string. If null, no conversion is performed, and the unit name is taken from sourceUnit if any.
|
| bool | MR::UnitToStringParams< E >::unitSuffix = getDefaultUnitParams<E>().unitSuffix |
| | Whether to show the unit suffix.
|
| NumberStyle | MR::UnitToStringParams< E >::style = getDefaultUnitParams<E>().style |
| | — Precision:
|
| int | MR::UnitToStringParams< E >::precision = getDefaultUnitParams<E>().precision |
| | How many digits of precision.
|
| bool | MR::UnitToStringParams< E >::plusSign = getDefaultUnitParams<E>().plusSign |
| | — Other:
|
| ZeroMode | MR::UnitToStringParams< E >::zeroMode = getDefaultUnitParams<E>().zeroMode |
| | How to deal with zeroes.
|
| bool | MR::UnitToStringParams< E >::unicodeMinusSign = getDefaultUnitParams<E>().unicodeMinusSign |
| | Use a pretty Unicode minus sign instead of the ASCII -.
|
| char | MR::UnitToStringParams< E >::thousandsSeparator = getDefaultUnitParams<E>().thousandsSeparator |
| | If non-zero, this character is inserted between every three digits to the left of the decimal point.
|
| char | MR::UnitToStringParams< E >::thousandsSeparatorFrac = getDefaultUnitParams<E>().thousandsSeparatorFrac |
| | If non-zero, this character is inserted between every three digits to the right of the decimal point.
|
| bool | MR::UnitToStringParams< E >::leadingZero = getDefaultUnitParams<E>().leadingZero |
| | If false, remove zero before the fractional point (.5 instead of 0.5).
|
| bool | MR::UnitToStringParams< E >::stripTrailingZeroes = getDefaultUnitParams<E>().stripTrailingZeroes |
| | Remove trailing zeroes after the fractional point. If the point becomes the last symbol, remove the point too.
|
| std::conditional_t< std::is_same_v< E, AngleUnit >, DegreesMode, detail::Units::Empty > | MR::UnitToStringParams< E >::degreesMode = getDefaultUnitParams<E>().degreesMode |
| | When printing degrees, this lets you display arcminutes and possibly arcseconds. Ignored for everything else.
|
| static constexpr int | MR::VectorTraits< ImVec2 >::size = 2 |
| static constexpr int | MR::VectorTraits< ImVec4 >::size = 4 |
| bool | MR::LaunchParams::fullscreen { false } |
| int | MR::LaunchParams::width { 0 } |
| | if true starts fullscreen
|
| int | MR::LaunchParams::height { 0 } |
| enum MR::LaunchParams::WindowMode | MR::LaunchParams::HideInit |
| bool | MR::LaunchParams::enableTransparentBackground { false } |
| bool | MR::LaunchParams::preferOpenGL3 { false } |
| bool | MR::LaunchParams::render3dSceneInTexture { true } |
| bool | MR::LaunchParams::developerFeatures { false } |
| | If not set renders scene each frame.
|
| bool | MR::LaunchParams::multiViewport { true } |
| | If set shows some developer features useful for debugging.
|
| std::string | MR::LaunchParams::name { "MRViewer" } |
| | If set allows to move the imgui (tool) windows outside the main () window. (unavailable for Apple, Wayland and Emscripten)
|
| bool | MR::LaunchParams::resetConfig { false } |
| | Window name.
|
| bool | MR::LaunchParams::startEventLoop { true } |
| | if true - resets config file on start of the application
|
| bool | MR::LaunchParams::close { true } |
| | If false - does not start event loop.
|
| bool | MR::LaunchParams::console { false } |
| | If !startEventLoop close immediately after start, otherwise close on window close, make sure you call launchShut manually if this flag is false.
|
| int | MR::LaunchParams::argc { 0 } |
| | If true - shows developers console.
|
| char ** | MR::LaunchParams::argv { nullptr } |
| | Pass argc.
|
| bool | MR::LaunchParams::showMRVersionInTitle { false } |
| | Pass argv.
|
| bool | MR::LaunchParams::isAnimating { false } |
| | if true - print version info in window title
|
| int | MR::LaunchParams::animationMaxFps { 30 } |
| | if true - calls render without system events
|
| bool | MR::LaunchParams::unloadPluginsAtEnd { false } |
| | max fps if animating
|
| std::shared_ptr< SplashWindow > | MR::LaunchParams::splashWindow |
| | unload all extended libraries right before program exit
|
| bool | MR::Viewer::swapOnLastPostEventsRedraw { true } |
| | if true only last frame of force redraw after events will be swapped, otherwise each will be swapped
|
| int | MR::Viewer::forceRedrawMinimumIncrementAfterEvents { 4 } |
| | minimum auto increment force redraw frames after events
|
| GLFWwindow * | MR::Viewer::window |
| | Member variables ///.
|
| std::function< void(Viewer *viewer)> | MR::Viewer::resetSettingsFunction |
| std::vector< Viewport > | MR::Viewer::viewport_list |
| | Stores all the viewing options.
|
| size_t | MR::Viewer::selected_viewport_index |
| std::vector< ViewerPlugin * > | MR::Viewer::plugins |
| | List of registered plugins.
|
| float | MR::Viewer::pixelRatio { 1.0f } |
| Vector2i | MR::Viewer::framebufferSize |
| Vector2i | MR::Viewer::windowSavePos |
| Vector2i | MR::Viewer::windowSaveSize |
| | pos to save
|
| Vector2i | MR::Viewer::windowOldPos |
| | size to save
|
| bool | MR::Viewer::windowMaximized { false } |
| bool | MR::Viewer::isAnimating { false } |
| | if true - calls render without system events
|
| int | MR::Viewer::animationMaxFps { 30 } |
| | max fps if animating
|
| float | MR::Viewer::scrollForce { } |
| uint16_t | MR::Viewer::glPickRadius { } |
| | opengl-based pick window radius in pixels
|
| bool | MR::Viewer::experimentalFeatures { } |
| | Experimental/developer features enabled.
|
| std::vector< std::string > | MR::Viewer::commandArgs |
| | command arguments, each parsed arg should be erased from here not to affect other parsers
|
| std::shared_ptr< ObjectMesh > | MR::Viewer::basisAxes |
| std::unique_ptr< CornerControllerObject > | MR::Viewer::basisViewController |
| std::unique_ptr< ViewportGlobalBasis > | MR::Viewer::globalBasis |
| std::shared_ptr< ObjectMesh > | MR::Viewer::rotationSphere |
| std::shared_ptr< ObjectMesh > | MR::Viewer::clippingPlaneObject |
| | Stores clipping plane mesh.
|
| std::shared_ptr< ViewerTitle > | MR::Viewer::windowTitle |
| | class that updates viewer title
|
| std::array< size_t, size_t(EventType::Count)> | MR::Viewer::EventsCounter::counter {} |
| std::array< size_t, size_t(GLPrimitivesType::Count)> | MR::Viewer::GLPrimitivesCounter::counter {} |
| const std::string | MR::cDefaultMultiViewportKey = "defaultMultiViewport" |
| | key for getting/satting default state for multi viewport from the config
|
| std::string | MR::ViewerEventQueue::NamedEvent::name |
| ViewerEventCallback | MR::ViewerEventQueue::NamedEvent::cb |
| boost::signals2::scoped_connection | MR::ConnectionHolder::connection_ |
| class MRVIEWER_CLASS | MR::WebRequest |
| Viewer * | MR::ViewerPlugin::viewer = &getViewerInstance() |
| | Pointer to the main Viewer class.
|
| MouseUpDownSignal | MR::ViewerSignals::mouseDownSignal |
| MouseUpDownSignal | MR::ViewerSignals::mouseUpSignal |
| | signal is called on mouse down
|
| MouseMoveSignal | MR::ViewerSignals::mouseMoveSignal |
| | signal is called on mouse up
|
| MouseScrollSignal | MR::ViewerSignals::mouseScrollSignal |
| | signal is called on mouse move, note that input x and y are in screen space
|
| MouseUpDownSignal | MR::ViewerSignals::mouseClickSignal |
| MouseUpDownSignal | MR::ViewerSignals::dragStartSignal |
| | signal is called when mouse button is pressed and immediately released
|
| MouseUpDownSignal | MR::ViewerSignals::dragEndSignal |
| | signal is called when mouse button is pressed (deferred if click behavior is on)
|
| MouseMoveSignal | MR::ViewerSignals::dragSignal |
| | signal is called when mouse button used to start drag is released
|
| CursorEntranceSignal | MR::ViewerSignals::cursorEntranceSignal |
| CharPressedSignal | MR::ViewerSignals::charPressedSignal |
| KeySignal | MR::ViewerSignals::keyUpSignal |
| | signal is called when unicode char on/is down/pressed for some time
|
| KeySignal | MR::ViewerSignals::keyDownSignal |
| | signal is called on key up
|
| KeySignal | MR::ViewerSignals::keyRepeatSignal |
| | signal is called on key down
|
| SpaceMouseMoveSignal | MR::ViewerSignals::spaceMouseMoveSignal |
| SpaceMouseKeySignal | MR::ViewerSignals::spaceMouseDownSignal |
| | signal is called on spacemouse 3d controller (joystick) move
|
| SpaceMouseKeySignal | MR::ViewerSignals::spaceMouseUpSignal |
| | signal is called on spacemouse key down
|
| SpaceMouseKeySignal | MR::ViewerSignals::spaceMouseRepeatSignal |
| | signal is called on spacemouse key up
|
| RenderSignal | MR::ViewerSignals::preSetupViewSignal |
| RenderSignal | MR::ViewerSignals::preDrawSignal |
| | signal is called before viewports cleanup and camera setup, so one can customize camera XFs for this frame
|
| RenderSignal | MR::ViewerSignals::preDrawPostViewportSignal |
| | signal is called before scene draw (but after scene setup)
|
| RenderSignal | MR::ViewerSignals::drawSignal |
| | signal is called before scene draw but after viewport.preDraw()
|
| RenderSignal | MR::ViewerSignals::postDrawPreViewportSignal |
| | signal is called on scene draw (after objects tree but before viewport.postDraw())
|
| RenderSignal | MR::ViewerSignals::postDrawSignal |
| | signal is called after scene draw but after before viewport.postDraw()
|
| ObjectsLoadedSignal | MR::ViewerSignals::objectsLoadedSignal |
| CursorEntranceSignal | MR::ViewerSignals::dragEntranceSignal |
| | signal is called when objects are loaded by Viewer::loadFiles function
|
| MouseMoveSignal | MR::ViewerSignals::dragOverSignal |
| | signal is called on drag enter/leave the window
|
| DragDropSignal | MR::ViewerSignals::dragDropSignal |
| | signal is called on drag coordinate changed
|
| PostResizeSignal | MR::ViewerSignals::postResizeSignal |
| | signal is called on drag and drop file
|
| PostRescaleSignal | MR::ViewerSignals::postRescaleSignal |
| | signal is called after window resize
|
| InterruptCloseSignal | MR::ViewerSignals::interruptCloseSignal |
| | signal is called after window rescale
|
| TouchSignal | MR::ViewerSignals::touchStartSignal |
| TouchSignal | MR::ViewerSignals::touchMoveSignal |
| | signal is called when any touch starts
|
| TouchSignal | MR::ViewerSignals::touchEndSignal |
| | signal is called when touch moves
|
| TouchpadGestureBeginSignal | MR::ViewerSignals::touchpadRotateGestureBeginSignal |
| TouchpadRotateGestureUpdateSignal | MR::ViewerSignals::touchpadRotateGestureUpdateSignal |
| | signal is called on touchpad rotate gesture beginning
|
| TouchpadGestureEndSignal | MR::ViewerSignals::touchpadRotateGestureEndSignal |
| | signal is called on touchpad rotate gesture update
|
| TouchpadGestureBeginSignal | MR::ViewerSignals::touchpadSwipeGestureBeginSignal |
| | signal is called on touchpad rotate gesture end
|
| TouchpadSwipeGestureUpdateSignal | MR::ViewerSignals::touchpadSwipeGestureUpdateSignal |
| | signal is called on touchpad swipe gesture beginning
|
| TouchpadGestureEndSignal | MR::ViewerSignals::touchpadSwipeGestureEndSignal |
| | signal is called on touchpad swipe gesture update
|
| TouchpadGestureBeginSignal | MR::ViewerSignals::touchpadZoomGestureBeginSignal |
| | signal is called on touchpad swipe gesture end
|
| TouchpadZoomGestureUpdateSignal | MR::ViewerSignals::touchpadZoomGestureUpdateSignal |
| | signal is called on touchpad zoom gesture beginning
|
| TouchpadGestureEndSignal | MR::ViewerSignals::touchpadZoomGestureEndSignal |
| | signal is called on touchpad zoom gesture update
|
| PostFocusSignal | MR::ViewerSignals::postFocusSignal |
| PreShutdownSignal | MR::ViewerSignals::preShutdownSignal |
| std::string | MR::ViewerTitle::appName_ |
| std::string | MR::ViewerTitle::version_ |
| std::string | MR::ViewerTitle::sceneName_ |
| float | MR::Viewport::LinePointImmediateRenderParams::width {1.0f} |
| bool | MR::Viewport::LinePointImmediateRenderParams::depthTest { true } |
| Vector4f | MR::Viewport::TriCornerColors::a |
| Vector4f | MR::Viewport::TriCornerColors::b |
| Vector4f | MR::Viewport::TriCornerColors::c |
| std::optional< Vector2f > | MR::Viewport::PickRenderObjectParams::point |
| | If specified, this is the target screen point. Otherwise use the mouse pos in viewport coordinates.
|
| PickRenderObjectPredicate | MR::Viewport::PickRenderObjectParams::predicate |
| | Predicate to additionally filter objects that should be treated as pickable.
|
| int | MR::Viewport::PickRenderObjectParams::pickRadius = -1 |
| bool | MR::Viewport::PickRenderObjectParams::exactPickFirst = true |
| const BaseRenderParams * | MR::Viewport::PickRenderObjectParams::baseRenderParams { nullptr } |
| | if not nullptr it can override render params for picker
|
| ViewportId | MR::Viewport::id { 1} |
| | Unique identifier.
|
| Color | MR::Viewport::Parameters::backgroundColor = Color( Vector3f{0.3f, 0.3f, 0.5f} ) |
| Vector3f | MR::Viewport::Parameters::lightPosition {0.0f, 0.3f, 0.0f} |
| Quaternionf | MR::Viewport::Parameters::cameraTrackballAngle |
| | x y z - position, w - factor
|
| Vector3f | MR::Viewport::Parameters::cameraTranslation |
| float | MR::Viewport::Parameters::cameraZoom {1.0f} |
| float | MR::Viewport::Parameters::cameraViewAngle {45.0f} |
| float | MR::Viewport::Parameters::cameraDnear {1.0f} |
| float | MR::Viewport::Parameters::cameraDfar {100.0f} |
| bool | MR::Viewport::Parameters::depthTest {true} |
| bool | MR::Viewport::Parameters::orthographic {true} |
| enum MR::Viewport::Parameters::GlobalBasisScaleMode | MR::Viewport::Parameters::Auto |
| float | MR::Viewport::Parameters::objectScale {1.0f} |
| | Caches the two-norm between the min/max point of the bounding box.
|
| Color | MR::Viewport::Parameters::borderColor |
| std::string | MR::Viewport::Parameters::label |
| Plane3f | MR::Viewport::Parameters::clippingPlane {Vector3f::plusX(), 0.0f} |
| enum MR::Viewport::Parameters::RotationCenterMode | MR::Viewport::Parameters::Dynamic |
| std::optional< Vector3f > | MR::Viewport::Parameters::staticRotationPivot |
| bool | MR::Viewport::Parameters::compensateRotation { true } |
| bool | MR::Viewport::Parameters::selectable {true} |
| | this flag allows viewport to be selected by user
|
| ViewportId | MR::CornerControllerObject::PickedIds::vId |
| RegionId | MR::CornerControllerObject::PickedIds::rId |
| Vector4f | MR::SegmEndColors::a |
| Vector4f | MR::SegmEndColors::b |
| std::vector< Vector3f > | MR::ViewportPointsWithColors::points |
| std::vector< Vector4f > | MR::ViewportPointsWithColors::colors |
| std::span< VisualObject *const > | MR::ViewportGL::PickParameters::renderVector |
| BaseRenderParams | MR::ViewportGL::PickParameters::baseRenderParams |
| | objects to pick
|
| Plane3f | MR::ViewportGL::PickParameters::clippingPlane |
| | parameters for rendering pick object
|
| unsigned | MR::ViewportGL::BasePickResult::geomId { unsigned( -1 ) } |
| unsigned | MR::ViewportGL::BasePickResult::primId { unsigned( -1 ) } |
| | id of picked object in PickParameters::renderVector (-1 means invalid)
|
| float | MR::ViewportGL::PickResult::zBuffer {1.0f} |
| BasePickResults | MR::ViewportGL::ScaledPickRes::pickRes |
| Box2i | MR::ViewportGL::ScaledPickRes::updatedBox |
| unsigned | MR::ViewportGL::PickColor::color [4] |
| Color | MR::VisualObjectTag::selectedColor |
| Color | MR::VisualObjectTag::unselectedColor |
| std::string | MR::WebRequest::FormData::path |
| std::string | MR::WebRequest::FormData::contentType |
| std::string | MR::WebRequest::FormData::name |
| std::string | MR::WebRequest::FormData::fileName |
| float | MR::MeshVoxelsConverter::voxelSize = 0.001f |
| | both in and from
|
| float | MR::MeshVoxelsConverter::surfaceOffset = 3 |
| | to voxels:
|
| ProgressCallback | MR::MeshVoxelsConverter::callBack |
| | number voxels around surface to calculate distance in (should be positive)
|
| float | MR::MeshVoxelsConverter::offsetVoxels = 0 |
| | from voxels:
|
| float | MR::MeshVoxelsConverter::adaptivity = 0 |
| | the value is in voxels (not in meters!), 0 for no-offset
|
| Vector3f | MR::OriginAndDimensions::origin |
| Vector3i | MR::OriginAndDimensions::dimensions |
| DicomStatusEnum | MR::VoxelsLoad::DicomStatus::status = DicomStatusEnum::Invalid |
| std::string | MR::VoxelsLoad::DicomStatus::reason |
| T | MR::VoxelsLoad::DicomVolumeT< T >::vol |
| std::string | MR::VoxelsLoad::DicomVolumeT< T >::name |
| AffineXf3f | MR::VoxelsLoad::DicomVolumeT< T >::xf |
| Vector3f | MR::DistanceVolumeParams::origin |
| | origin point of voxels box
|
| ProgressCallback | MR::DistanceVolumeParams::cb |
| | progress callback
|
| Vector3f | MR::DistanceVolumeParams::voxelSize { 1.0f,1.0f,1.0f } |
| | size of voxel on each axis
|
| Vector3i | MR::DistanceVolumeParams::dimensions { 100,100,100 } |
| | num voxels along each axis
|
| Vector3f | MR::FixUndercuts::FindParams::upDirection |
| | Primitives that are not visible from up direction are considered as undercuts (fix undercuts is performed downwards (in -direction))
|
| float | MR::FixUndercuts::FindParams::wallAngle = 0.0f |
| FindParams | MR::FixUndercuts::FixParams::findParameters |
| | parameters of what is considered as undercut
|
| float | MR::FixUndercuts::FixParams::voxelSize = 0.0f |
| | voxel size for internal computations: lower size - better precision but more system resources required
|
| float | MR::FixUndercuts::FixParams::bottomExtension = 0.0f |
| | minimum extension of bottom part of the mesh
|
| const FaceBitSet * | MR::FixUndercuts::FixParams::region = nullptr |
| | if set - only this region will be fixed (but still all mesh will be rebuild)
|
| bool | MR::FixUndercuts::FixParams::smooth = false |
| | if true applies one iterations of gaussian filtering for voxels, useful if thin walls expected
|
| ProgressCallback | MR::FixUndercuts::FixParams::cb |
| Vector3f | MR::FixUndercuts::ImproveDirectionParameters::hintDirection |
| | Hint direction which will be improved.
|
| float | MR::FixUndercuts::ImproveDirectionParameters::baseAngleStep {5.0f*PI_F / 180.0f} |
| | Radial step given in radians look improveDirection comment.
|
| float | MR::FixUndercuts::ImproveDirectionParameters::maxBaseAngle {30.0f*PI_F / 180.0f} |
| | Maximum radial line given in radians look improveDirection comment.
|
| float | MR::FixUndercuts::ImproveDirectionParameters::polarAngleStep {20.0f*PI_F / 180.0f} |
| | Polar angle step.
|
| Vector2i | MR::FixUndercuts::DistMapImproveDirectionParameters::distanceMapResolution {100,100} |
| | Resolution of distance map, lower it is, faster score works.
|
| Vector3f | MR::MarchingCubesParams::origin |
| | origin point of voxels box in 3D space with output mesh
|
| ProgressCallback | MR::MarchingCubesParams::cb |
| | progress callback
|
| float | MR::MarchingCubesParams::iso { 0.0f } |
| | target iso-value of the surface to be extracted from volume
|
| bool | MR::MarchingCubesParams::lessInside { false } |
| | should be false for dense volumes, and true for distance volume
|
| Vector< VoxelId, FaceId > * | MR::MarchingCubesParams::outVoxelPerFaceMap { nullptr } |
| | optional output map FaceId->VoxelId
|
| VoxelPointPositioner | MR::MarchingCubesParams::positioner = {} |
| int | MR::MarchingCubesParams::maxVertices = INT_MAX |
| | if the mesh exceeds this number of vertices, an error returns
|
| enum MR::MarchingCubesParams::CachingMode | MR::MarchingCubesParams::cachingMode = CachingMode::Automatic |
| std::function< void()> | MR::MarchingCubesParams::freeVolume |
| | this optional function is called when volume is no longer needed to deallocate it and reduce peak memory consumption
|
| DistanceVolumeParams | MR::MeshToDistanceVolumeParams::vol |
| SignedDistanceToMeshOptions | MR::MeshToDistanceVolumeParams::dist |
| std::shared_ptr< IFastWindingNumber > | MR::MeshToDistanceVolumeParams::fwn |
| float | MR::CloseToMeshVolumeParams::closeDist = 0 |
| | a resulting voxel will get 1 if that voxel's center is not further than unsigned (closeDist) from the surface, and 0 otherwise
|
| DistanceVolumeParams | MR::CloseToMeshVolumeParams::vol |
| | dimensions, location, and scaling in world space of the expected volume
|
| const AffineXf3f * | MR::CloseToMeshVolumeParams::meshToWorld = nullptr |
| | optional transformation from mesh space to world space
|
| DistanceVolumeParams | MR::MeshToDirectionVolumeParams::vol |
| DistanceToMeshOptions | MR::MeshToDirectionVolumeParams::dist |
| std::shared_ptr< IPointsToMeshProjector > | MR::MeshToDirectionVolumeParams::projector |
| | note that signMode is ignored in this algorithm
|
| FilterType | MR::ObjectVoxels::VolumeRenderingParams::volumeFilterType { FilterType::Linear } |
| | volume texture smoothing
|
| enum MR::ObjectVoxels::VolumeRenderingParams::ShadingType | MR::ObjectVoxels::VolumeRenderingParams::None |
| enum MR::ObjectVoxels::VolumeRenderingParams::LutType | MR::ObjectVoxels::VolumeRenderingParams::Rainbow |
| Color | MR::ObjectVoxels::VolumeRenderingParams::oneColor { Color::white() } |
| | color that is used for OneColor mode
|
| float | MR::ObjectVoxels::VolumeRenderingParams::min { 0.0f } |
| | minimum colored value (voxels with lower values are transparent)
|
| float | MR::ObjectVoxels::VolumeRenderingParams::max { 0.0f } |
| | maximum colored value (voxels with higher values are transparent)
|
| float | MR::ObjectVoxels::VolumeRenderingParams::samplingStep { -1.0f } |
| enum MR::ObjectVoxels::VolumeRenderingParams::AlphaType | MR::ObjectVoxels::VolumeRenderingParams::Constant |
| uint8_t | MR::ObjectVoxels::VolumeRenderingParams::alphaLimit { 10 } |
| IsoSurfaceChangedSignal | MR::ObjectVoxels::isoSurfaceChangedSignal |
| VoxelsChangedSignal | MR::ObjectVoxels::voxelsChangedSignal |
| VoxelBitSet | MR::ObjectVoxels::selectedVoxels_ |
| VoxelBitSet | MR::ObjectVoxels::volumeRenderActiveVoxels_ |
| bool | MR::ObjectVoxels::volumeRendering_ { false } |
| float | MR::BaseShellParameters::voxelSize = 0 |
| ProgressCallback | MR::BaseShellParameters::callBack |
| | Progress callback.
|
| SignDetectionMode | MR::OffsetParameters::signDetectionMode = SignDetectionMode::OpenVDB |
| | determines the method to compute distance sign
|
| bool | MR::OffsetParameters::closeHolesInHoleWindingNumber = true |
| | whether to construct closed mesh in signMode = SignDetectionModeShort::HoleWindingNumber
|
| float | MR::OffsetParameters::windingNumberThreshold = 0.5f |
| float | MR::OffsetParameters::windingNumberBeta = 2 |
| std::shared_ptr< IFastWindingNumber > | MR::OffsetParameters::fwn |
| bool | MR::OffsetParameters::memoryEfficient = true |
| UndirectedEdgeBitSet * | MR::SharpOffsetParameters::outSharpEdges = nullptr |
| | if non-null then created sharp edges will be saved here
|
| float | MR::SharpOffsetParameters::minNewVertDev = 1.0f / 25 |
| | minimal surface deviation to introduce new vertex in a voxel, measured in voxelSize
|
| float | MR::SharpOffsetParameters::maxNewRank2VertDev = 5 |
| | maximal surface deviation to introduce new rank 2 vertex (on intersection of 2 planes), measured in voxelSize
|
| float | MR::SharpOffsetParameters::maxNewRank3VertDev = 2 |
| | maximal surface deviation to introduce new rank 3 vertex (on intersection of 3 planes), measured in voxelSize
|
| float | MR::SharpOffsetParameters::maxOldVertPosCorrection = 0.5f |
| Mode | MR::GeneralOffsetParameters::mode = Mode::Standard |
| Proc | MR::RangeProcessorSingle< TreeT, Proc >::mProc |
| size_t | MR::RangeSize::leaf = 0 |
| size_t | MR::RangeSize::tile = 0 |
| RangeSize | MR::RangeCounter< TreeT >::size |
| float | MR::PointsToDistanceVolumeParams::sigma = 1 |
| float | MR::PointsToDistanceVolumeParams::minWeight = 1 |
| | minimum sum of influence weights from surrounding points for a voxel to get a value, meaning that there shall be at least this number of points in close proximity
|
| float | MR::PointsToDistanceVolumeParams::invSigmaModifier = 0.5f |
| bool | MR::PointsToDistanceVolumeParams::sqrtAngleWeight { false } |
| const VertNormals * | MR::PointsToDistanceVolumeParams::ptNormals = nullptr |
| | optional input: if this pointer is set then function will use these normals instead of ones present in cloud
|
| MR_BIND_PREFER_UNLOCK_GIL_WHEN_USED_AS_PARAM float | MR::PointsToMeshParameters::sigma = 1 |
| float | MR::PointsToMeshParameters::minWeight = 1 |
| | minimum sum of influence weights from surrounding points for a triangle to appear, meaning that there shall be at least this number of points in close proximity
|
| float | MR::PointsToMeshParameters::invSigmaModifier = 0.5f |
| bool | MR::PointsToMeshParameters::sqrtAngleWeight { false } |
| float | MR::PointsToMeshParameters::voxelSize = 0 |
| const VertColors * | MR::PointsToMeshParameters::ptColors = nullptr |
| | optional input: colors of input points
|
| VertColors * | MR::PointsToMeshParameters::vColors = nullptr |
| | optional output: averaged colors of mesh vertices
|
| ProgressCallback | MR::PointsToMeshParameters::progress |
| | Progress callback.
|
| std::function< Expected< void >(const PointCloud &cloud, const PointsToDistanceVolumeParams ¶ms, std::function< Expected< void >(const SimpleVolumeMinMax &volume, int zOffset)> addPart, int layerOverlap)> | MR::PointsToMeshParameters::createVolumeCallbackByParts |
| std::function< Expected< SimpleVolumeMinMax >(const PointCloud &cloud, const PointsToDistanceVolumeParams ¶ms)> | MR::PointsToMeshParameters::createVolumeCallback |
| | Callback for volume creation. If both volume creation functions are null - volume will be created with memory efficient pointsToDistanceFunctionVolume function.
|
| std::function< bool(const PointCloud &cloud, const PointsToDistanceVolumeParams ¶ms)> | MR::PointsToMeshParameters::canCreateVolume |
| | Callback for checking whether it's possible to use the volume creation function.
|
| Vector3f | MR::PolylineToDistanceVolumeParams::voxelSize = Vector3f::diagonal( 1.f ) |
| float | MR::PolylineToDistanceVolumeParams::offsetCount = 3 |
| | offsetCount - the number of voxels around polyline to calculate distance in (should be positive)
|
| AffineXf3f | MR::PolylineToDistanceVolumeParams::worldXf |
| AffineXf3f * | MR::PolylineToDistanceVolumeParams::outXf { nullptr } |
| | line initial transform
|
| ProgressCallback | MR::PolylineToDistanceVolumeParams::cb |
| | optional output: xf to original mesh (respecting worldXf)
|
| DistanceVolumeParams | MR::PolylineToVolumeParams::vol |
| DistanceToMeshOptions | MR::PolylineToVolumeParams::dist |
| bool | MR::RebuildMeshSettings::preSubdivide = true |
| float | MR::RebuildMeshSettings::voxelSize = 0 |
| SignDetectionModeShort | MR::RebuildMeshSettings::signMode = SignDetectionModeShort::Auto |
| bool | MR::RebuildMeshSettings::closeHolesInHoleWindingNumber = true |
| | whether to construct closed mesh in signMode = SignDetectionModeShort::HoleWindingNumber
|
| OffsetMode | MR::RebuildMeshSettings::offsetMode = OffsetMode::Standard |
| UndirectedEdgeBitSet * | MR::RebuildMeshSettings::outSharpEdges = nullptr |
| | if non-null then created sharp edges (only if offsetMode = OffsetMode::Sharpening) will be saved here
|
| float | MR::RebuildMeshSettings::windingNumberThreshold = 0.5f |
| float | MR::RebuildMeshSettings::windingNumberBeta = 2 |
| std::shared_ptr< IFastWindingNumber > | MR::RebuildMeshSettings::fwn |
| bool | MR::RebuildMeshSettings::decimate = true |
| | whether to decimate resulting mesh
|
| float | MR::RebuildMeshSettings::tinyEdgeLength = -1 |
| ProgressCallback | MR::RebuildMeshSettings::progress |
| | To report algorithm's progress and cancel it on user demand.
|
| std::function< void(SignDetectionMode)> | MR::RebuildMeshSettings::onSignDetectionModeSelected |
| int | MR::SliceInfoBase::instanceNum = 0 |
| | instance number
|
| double | MR::SliceInfoBase::z = 0 |
| | layer height
|
| int | MR::SliceInfoBase::fileNum = 0 |
| | file index
|
| Vector3d | MR::SliceInfo::imagePos |
| | image position
|
| const Polyline3 & | MR::ComputeSweptVolumeParameters::path |
| | toolpath
|
| MeshPart | MR::ComputeSweptVolumeParameters::toolMesh |
| | tool mesh
|
| const EndMillTool * | MR::ComputeSweptVolumeParameters::toolSpec = nullptr |
| float | MR::ComputeSweptVolumeParameters::voxelSize { 0.0f } |
| size_t | MR::ComputeSweptVolumeParameters::memoryLimit = 0 |
| | (distance volume) max memory amount used for the distance volume, zero for no limits
|
| ProgressCallback | MR::ComputeSweptVolumeParameters::cb |
| | progress callback
|
| DirectionVolume | MR::TeethMaskToDirectionVolumeConvertor::ProcessResult::volume |
| AffineXf3f | MR::TeethMaskToDirectionVolumeConvertor::ProcessResult::xf |
| float | MR::Nesting::TetrisDensifyOptions::voxelSize { 0.0f } |
| | size of block for tetris box
|
| std::vector< OutEdge > | MR::Nesting::TetrisDensifyOptions::densificationSequence = { OutEdge::MinusZ,OutEdge::MinusY,OutEdge::MinusX } |
| | tetris box will be densify in these directions one by one
|
| ProgressCallback | MR::Nesting::TetrisDensifyOptions::cb |
| Vector< ObjId, VoxelId > * | MR::Nesting::TetrisDensifyOptions::nestVoxelsCache { nullptr } |
| | [in/out] pre-allocated voxels vector (to speedup allocation)
|
| Vector3i * | MR::Nesting::TetrisDensifyOptions::nestDimensionsCache { nullptr } |
| | [in/out] dimensions of the nest (complimentary to voxels data)
|
| VoxelBitSet * | MR::Nesting::TetrisDensifyOptions::occupiedVoxelsCache { nullptr } |
| | [in/out] voxels that blocks movement of floating (input) meshes (to provide input and output occupancy status)
|
| NestingBaseParams | MR::Nesting::TetrisDensifyParams::baseParams |
| TetrisDensifyOptions | MR::Nesting::TetrisDensifyParams::options |
| float | MR::ToolPathParams::millRadius = {} |
| | radius of the milling tool
|
| float | MR::ToolPathParams::voxelSize = {} |
| | size of voxel needed to offset mesh
|
| float | MR::ToolPathParams::sectionStep = {} |
| float | MR::ToolPathParams::critTransitionLength = {} |
| float | MR::ToolPathParams::plungeLength = {} |
| | when the mill is moving down, it will be slowed down in this distance from mesh
|
| float | MR::ToolPathParams::retractLength = {} |
| | when the mill is moving up, it will be slowed down in this distance from mesh
|
| float | MR::ToolPathParams::plungeFeed = {} |
| | speed of slow movement down
|
| float | MR::ToolPathParams::retractFeed = {} |
| | speed of slow movement up
|
| float | MR::ToolPathParams::baseFeed = {} |
| | speed of regular milling
|
| float | MR::ToolPathParams::safeZ = {} |
| | z-coordinate of plane where tool can move in any direction without touching the object
|
| BypassDirection | MR::ToolPathParams::bypassDir = BypassDirection::Clockwise |
| | which direction isolines or sections should be passed in
|
| const AffineXf3f * | MR::ToolPathParams::xf = nullptr |
| | mesh can be transformed using xf parameter
|
| bool | MR::ToolPathParams::flatTool = false |
| | if true then a tool path for a flat milling tool will be generated
|
| ProgressCallback | MR::ToolPathParams::cb = {} |
| | callback for reporting on progress
|
| float | MR::ToolPathParams::toolpathExpansion = 0.f |
| Contours3f * | MR::ToolPathParams::isolines = nullptr |
| | optional output, stores isolines without transits
|
| Contours3f * | MR::ToolPathParams::startContours = nullptr |
| | optional output, polyline containing start vertices for isolines
|
| std::vector< Vector3f > * | MR::ToolPathParams::startVertices = nullptr |
| | start vertices on the offset mesh used for calcutating isolines
|
| MeshPart * | MR::ToolPathParams::offsetMesh = nullptr |
| bool | MR::ConstantCuspParams::fromCenterToBoundary = true |
| | if true isolines will be processed from center point to the boundary (usually it means from up to down)
|
| float | MR::LineInterpolationParams::eps = {} |
| | maximal deviation from given line
|
| float | MR::LineInterpolationParams::maxLength = {} |
| | maximal length of the line
|
| ProgressCallback | MR::LineInterpolationParams::cb = {} |
| | callback for reporting on progress
|
| float | MR::ArcInterpolationParams::eps = {} |
| | maximal deviation of arc from given path
|
| float | MR::ArcInterpolationParams::maxRadius = {} |
| | maximal radius of the arc
|
| ProgressCallback | MR::ArcInterpolationParams::cb = {} |
| | callback for reporting on progress
|
| MoveType | MR::GCommand::type = MoveType::Linear |
| | type of command GX (G0, G1, etc). By default - G1
|
| ArcPlane | MR::GCommand::arcPlane = ArcPlane::None |
| | Place for comment.
|
| float | MR::GCommand::feed = std::numeric_limits<float>::quiet_NaN() |
| | feedrate for move
|
| float | MR::GCommand::x = std::numeric_limits<float>::quiet_NaN() |
| | coordinates of destination point
|
| float | MR::GCommand::y = std::numeric_limits<float>::quiet_NaN() |
| float | MR::GCommand::z = std::numeric_limits<float>::quiet_NaN() |
| Vector3f | MR::GCommand::arcCenter = Vector3f::diagonal( std::numeric_limits<float>::quiet_NaN() ) |
| | if moveType is ArcCW or ArcCCW center of the arc shoult be specified
|
| Mesh | MR::ToolPathResult::modifiedMesh |
| | mesh after fixing undercuts and offset
|
| FaceBitSet | MR::ToolPathResult::modifiedRegion |
| | selected region projected from the original mesh to the offset
|
| std::vector< GCommand > | MR::ToolPathResult::commands |
| | constains type of movement and its feed
|
| enum MR::MeshToVolumeParams::Type | MR::MeshToVolumeParams::Unsigned |
| float | MR::MeshToVolumeParams::surfaceOffset { 3.0 } |
| Vector3f | MR::MeshToVolumeParams::voxelSize = Vector3f::diagonal( 1.0f ) |
| | the number of voxels around surface to calculate distance in (should be positive)
|
| AffineXf3f | MR::MeshToVolumeParams::worldXf |
| AffineXf3f * | MR::MeshToVolumeParams::outXf { nullptr } |
| | mesh initial transform
|
| ProgressCallback | MR::MeshToVolumeParams::cb |
| | optional output: xf to original mesh (respecting worldXf)
|
| Vector3f | MR::GridToMeshSettings::voxelSize |
| | the size of each voxel in the grid
|
| float | MR::GridToMeshSettings::isoValue = 0 |
| | layer of grid with this value would be converted in mesh; isoValue can be negative only in level set grids
|
| float | MR::GridToMeshSettings::adaptivity = 0 |
| | adaptivity - [0.0;1.0] ratio of combining small triangles into bigger ones (curvature can be lost on high values)
|
| int | MR::GridToMeshSettings::maxFaces = INT_MAX |
| | if the mesh exceeds this number of faces, an error returns
|
| int | MR::GridToMeshSettings::maxVertices = INT_MAX |
| | if the mesh exceeds this number of vertices, an error returns
|
| bool | MR::GridToMeshSettings::relaxDisorientedTriangles = true |
| ProgressCallback | MR::GridToMeshSettings::cb |
| | to receive progress and request cancellation
|
| AffineXf3f | MR::MakeSignedByWindingNumberSettings::meshToGridXf |
| | defines the mapping from mesh reference from to grid reference frame
|
| std::shared_ptr< IFastWindingNumber > | MR::MakeSignedByWindingNumberSettings::fwn |
| | defines particular implementation of IFastWindingNumber interface that will compute windings. If it is not specified, default FastWindingNumber is used
|
| float | MR::MakeSignedByWindingNumberSettings::windingNumberThreshold = 0.5f |
| float | MR::MakeSignedByWindingNumberSettings::windingNumberBeta = 2 |
| | determines the precision of fast approximation: the more the better, minimum value is 1
|
| ProgressCallback | MR::MakeSignedByWindingNumberSettings::progress |
| | to report algorithm's progress and to cancel it
|
| float | MR::DoubleOffsetSettings::voxelSize = 0 |
| | the size of voxel in intermediate voxel grid representation
|
| float | MR::DoubleOffsetSettings::offsetA = 0 |
| | the amount of first offset
|
| float | MR::DoubleOffsetSettings::offsetB = 0 |
| | the amount of second offset
|
| float | MR::DoubleOffsetSettings::adaptivity = 0 |
| | in [0; 1] - ratio of combining small triangles into bigger ones (curvature can be lost on high values)
|
| std::shared_ptr< IFastWindingNumber > | MR::DoubleOffsetSettings::fwn |
| | defines particular implementation of IFastWindingNumber interface that will compute windings. If it is not specified, default FastWindingNumber is used
|
| float | MR::DoubleOffsetSettings::windingNumberThreshold = 0.5f |
| float | MR::DoubleOffsetSettings::windingNumberBeta = 2 |
| | determines the precision of fast approximation: the more the better, minimum value is 1
|
| ProgressCallback | MR::DoubleOffsetSettings::progress |
| | to report algorithm's progress and to cancel it
|
| Vector3i | MR::VoxelsVolumeInterpolatedAccessor< Accessor >::IndexAndPos::index |
| Vector3f | MR::VoxelsVolumeInterpolatedAccessor< Accessor >::IndexAndPos::pos |
| | Zero-based voxel index in the volume.
|
| VdbVolume | MR::TransformVdbVolumeResult::volume |
| bool | MR::TransformVdbVolumeResult::boxFixed = false |
| PreCutCallback | MR::MergeVolumePartSettings::preCut = nullptr |
| PostCutCallback | MR::MergeVolumePartSettings::postCut = nullptr |
| PostMergeCallback | MR::MergeVolumePartSettings::postMerge = nullptr |
| PartMapping | MR::MergeVolumePartSettings::mapping = {} |
| | mapping with initialized maps required for the postMerge callback
|
| Vector3f | MR::MergeVolumePartSettings::origin = {} |
| | origin (position of the (0;0;0) voxel) of the voxel volume part, usually specified for SimpleVolume
|
| size_t | MR::VolumeToMeshByPartsSettings::maxVolumePartMemoryUsage = 2 << 28 |
| | the upper limit of memory amount used to store a voxel volume part
|
| size_t | MR::VolumeToMeshByPartsSettings::stripeOverlap = 4 |
| | overlap in voxels between two parts
|
| MRVOXELS_CLASS | MR::VoxelsVolumeMinMax |
| MRVOXELS_CLASS | MR::SimpleVolumeMinMax |
| MRVOXELS_CLASS | MR::VoxelsVolume |
| MRVOXELS_CLASS | MR::FunctionVolume |
| template<typename T> |
| | MR::VoxelsLoad::struct |
| MRVOXELS_CLASS | MR::VoxelsLoad::DicomVolumeT |
| MRVOXELS_CLASS | MR::VoxelsLoad::DicomVolume |
| T | MR::VoxelsVolume< T >::data |
| Vector3i | MR::VoxelsVolume< T >::dims |
| Vector3f | MR::VoxelsVolume< T >::voxelSize { 1.f, 1.f, 1.f } |
| static constexpr bool | MR::VoxelsVolumeAccessor< VdbVolume >::cacheEffective = true |
| | caching results of this accessor can improve performance
|
| static constexpr bool | MR::VoxelsVolumeAccessor< VoxelsVolume< Vector< T, VoxelId > > >::cacheEffective = false |
| | caching results of this accessor does not make any sense since it returns values from a simple container
|
| static constexpr bool | MR::VoxelsVolumeAccessor< VoxelsVolume< VoxelValueGetter< T > > >::cacheEffective = true |
| | caching results of this accessor can improve performance
|
| size_t | MR::VoxelsVolumeCachingAccessor< V >::Parameters::preloadedLayerCount = 1 |
| | amount of layers to be preloaded
|