2016-09-27 04:59:06 -05:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "cvfBase.h"
|
|
|
|
#include "cvfObject.h"
|
|
|
|
#include "cvfVector3.h"
|
|
|
|
#include "cvfArray.h"
|
|
|
|
#include "cvfBoundingBox.h"
|
|
|
|
|
|
|
|
namespace cvf {
|
|
|
|
class DrawableGeo;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
namespace caf {
|
|
|
|
|
|
|
|
|
|
|
|
//==================================================================================================
|
|
|
|
//
|
|
|
|
//
|
|
|
|
//==================================================================================================
|
|
|
|
class BoxManipulatorGeometryGenerator : public cvf::Object
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
BoxManipulatorGeometryGenerator();
|
|
|
|
~BoxManipulatorGeometryGenerator();
|
|
|
|
|
2016-09-29 04:43:47 -05:00
|
|
|
void setOrigin(const cvf::Vec3d& origin);
|
2016-09-27 04:59:06 -05:00
|
|
|
void setSize(const cvf::Vec3d& size);
|
|
|
|
|
|
|
|
cvf::ref<cvf::DrawableGeo> createBoundingBoxMeshDrawable();
|
|
|
|
|
|
|
|
private:
|
|
|
|
void calculateArrays();
|
|
|
|
|
|
|
|
static cvf::ref<cvf::UIntArray> lineIndicesFromQuadVertexArray(const cvf::Vec3fArray* vertexArray);
|
|
|
|
|
|
|
|
private:
|
2016-09-29 04:43:47 -05:00
|
|
|
cvf::Vec3d m_origin;
|
2016-09-27 04:59:06 -05:00
|
|
|
cvf::Vec3d m_size;
|
|
|
|
|
|
|
|
cvf::ref<cvf::Vec3fArray> m_vertices;
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|