修复等值面无变量bug

master
禅元天道 2023-11-14 17:07:54 +08:00
parent ba6b338d52
commit 402a1ce747
2 changed files with 18 additions and 37 deletions

View File

@ -11,61 +11,42 @@
#include <BRepBndLib.hxx>
#include "geometryCommandAPI.h"
namespace Geometry
{
namespace Geometry {
class GeometrySet;
}
namespace Command
{
class GEOMETRYCOMMANDAPI GeoCommandCommon
{
namespace Command {
class GEOMETRYCOMMANDAPI GeoCommandCommon {
public:
GeoCommandCommon() = default;
GeoCommandCommon() = default;
~GeoCommandCommon() = default;
static std::vector<TopoDS_Wire> bulidWire(std::list<TopoDS_Edge>& edgeList);
static TopoDS_Shape makeFace(std::vector<TopoDS_Wire>& wires);
static bool isInside(const TopoDS_Wire&, const TopoDS_Wire&);
static TopoDS_Face validateFace(const TopoDS_Face&);
static TopoDS_Shape removeSplitter(const TopoDS_Shape& shape);
static bool isEmpty(const TopoDS_Shape &shape);
//从inputShape中移除component返回移除之前的副本
static TopoDS_Shape makeFace(std::vector<TopoDS_Wire>& wires);
static bool isInside(const TopoDS_Wire&, const TopoDS_Wire&);
static TopoDS_Face validateFace(const TopoDS_Face&);
static TopoDS_Shape removeSplitter(const TopoDS_Shape& shape);
static bool isEmpty(const TopoDS_Shape& shape);
// 从inputShape中移除component返回移除之前的副本
static TopoDS_Shape removeShape(TopoDS_Shape* inputShape, TopoDS_Shape* component);
static gp_Ax2 getEdgeAxis(Geometry::GeometrySet* set ,int edgeindex);
static gp_Ax2 getFaceAxis(Geometry::GeometrySet* set, int index);
static gp_Ax2 getEdgeAxis(Geometry::GeometrySet* set, int edgeindex);
static gp_Ax2 getFaceAxis(Geometry::GeometrySet* set, int index);
private:
static TopoDS_Shape makeFace(std::list<TopoDS_Wire>&);
};
// sort bounding boxes according to diagonal length
class Wire_Compare : public std::binary_function<const TopoDS_Wire&,
const TopoDS_Wire&, bool>
{
class Wire_Compare : public std::binary_function<const TopoDS_Wire&, const TopoDS_Wire&, bool> {
public:
bool operator() (const TopoDS_Wire& w1, const TopoDS_Wire& w2)
bool operator()(const TopoDS_Wire& w1, const TopoDS_Wire& w2)
{
Bnd_Box box1, box2;
if (!w1.IsNull())
{
if(!w1.IsNull()) {
BRepBndLib::Add(w1, box1);
box1.SetGap(0.0);
}
if (!w2.IsNull())
{
if(!w2.IsNull()) {
BRepBndLib::Add(w2, box2);
box2.SetGap(0.0);
}
@ -73,6 +54,6 @@ namespace Command
return box1.SquareExtent() < box2.SquareExtent();
}
};
}
} // namespace Command
#endif

View File

@ -136,7 +136,7 @@ namespace Post
QStringList pArray = _parentObject->getPointDataArray();
for (auto array : pArray)
{
if (_parentObject->variableType(1, array) != 1)
if (_parentObject->variableType(1, array) != "scalar")
continue;
_ui->variableComboBox->addItem(array);