NVIDIA IndeX API nvidia_logo_transpbg.gif Up
iellipsoid.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 *****************************************************************************/
6
7#ifndef NVIDIA_INDEX_IELLIPSOID_H
8#define NVIDIA_INDEX_IELLIPSOID_H
9
10#include <mi/base/interface_declare.h>
11#include <mi/dice.h>
12
13#include <nv/index/ishape.h>
14
15namespace nv
16{
17namespace index
18{
19
28 public mi::base::Interface_declare<0xa22f3595,0xe462,0x44ef,0xa9,0x23,0x9b,0x1d,0xdc,0x7a,0xda,0x50,
29 nv::index::IObject_space_shape>
30{
31public:
36 virtual const mi::math::Vector_struct<mi::Float32, 3>& get_center() const = 0;
41 virtual void set_center(const mi::math::Vector_struct<mi::Float32, 3>& center) = 0;
42
53 virtual void get_semi_axes(
54 mi::math::Vector_struct<mi::Float32, 3>& a,
55 mi::math::Vector_struct<mi::Float32, 3>& b,
56 mi::math::Vector_struct<mi::Float32, 3>& c) const = 0;
57
70 virtual bool set_semi_axes(
71 const mi::math::Vector_struct<mi::Float32, 3>& a,
72 const mi::math::Vector_struct<mi::Float32, 3>& b,
73 mi::Float32 c) = 0;
74};
75
76}} // namespace index / nv
77
78#endif // NVIDIA_INDEX_IELLIPSOID_H
The set of higher-level 3D shapes part of the NVIDIA IndeX library include a 3D ellipsoid.
Definition: iellipsoid.h:30
virtual void get_semi_axes(mi::math::Vector_struct< mi::Float32, 3 > &a, mi::math::Vector_struct< mi::Float32, 3 > &b, mi::math::Vector_struct< mi::Float32, 3 > &c) const =0
Returns the semi-axes of the ellipsoid.
virtual const mi::math::Vector_struct< mi::Float32, 3 > & get_center() const =0
The center of the ellipsoid.
virtual bool set_semi_axes(const mi::math::Vector_struct< mi::Float32, 3 > &a, const mi::math::Vector_struct< mi::Float32, 3 > &b, mi::Float32 c)=0
Sets the semi-axes of the ellipsoid.
virtual void set_center(const mi::math::Vector_struct< mi::Float32, 3 > &center)=0
Set the center of the ellipsoid.
Base class declaring the functionality of higher-level shapes.
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349