Skip to content

Commit 0d340bf

Browse files
committed
Function Changes
1 parent 023ae28 commit 0d340bf

File tree

1 file changed

+18
-14
lines changed

1 file changed

+18
-14
lines changed

src/Modules/Legacy/Fields/CalculateNormals.cc

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,13 @@
2727

2828

2929
#include <Modules/Legacy/Fields/CalculateNormals.h>
30-
#include <Core/Datatypes/String.h>
30+
#include <Core/Datatypes/Legacy/Field/Field.h>
31+
#include <Core/Datatypes/Legacy/Field/VField.h>
32+
#include <Core/Datatypes/Legacy/Field/VMesh.h>
33+
#include <Core/Datatypes/Legacy/Field/FieldInformation.h>
3134

3235
using namespace SCIRun;
36+
using namespace SCIRun::Core::Geometry;
3337
using namespace SCIRun::Modules::Fields;
3438
using namespace SCIRun::Core::Datatypes;
3539
using namespace SCIRun::Dataflow::Networks;
@@ -52,9 +56,9 @@ CalculateNormals::execute()
5256
auto ifieldhandle = getRequiredInput(InputField);
5357
auto ipointhandle = getRequiredInput(InputPoint);
5458

55-
if ( inputs_changed_ || !oport_cached("Output Field"))
59+
if ( needToExecute())
5660
{
57-
update_state(Executing);
61+
auto state = get_state();
5862

5963
VField* point_field = ipointhandle->vfield();
6064
VMesh* point_mesh = ipointhandle->vmesh();
@@ -69,14 +73,15 @@ CalculateNormals::execute()
6973
Vector dir;
7074
bool has_vector = false;
7175
point_mesh->get_center(attract_point,VMesh::Node::index_type(0));
76+
FieldInformation pointfi(ipointhandle);
7277

73-
if (!(point_field->is_pointcloudmesh()))
78+
if (!(pointfi.is_pointcloudmesh()))
7479
{
7580
error("Input field was not a valid point cloud.");
7681
return;
7782
}
7883

79-
if (point_field->is_vector())
84+
if (pointfi.is_vector())
8085
{
8186
has_vector = true;
8287
point_field->get_value(dir,0);
@@ -86,16 +91,15 @@ CalculateNormals::execute()
8691

8792
VField::size_type num_values = field->num_values();
8893

89-
FieldInformation fi(ifieldhandle);
90-
if (fi.field_basis_order() < 1)
94+
FieldInformation fieldfi(ifieldhandle);
95+
if (fieldfi.field_basis_order() < 1)
9196
{
92-
fi.make_lineardata();
93-
fi.make_vector();
97+
fieldfi.make_lineardata();
9498
}
9599

96-
fi.make_vector();
100+
fieldfi.make_vector();
97101

98-
auto ofieldhandle = CreateField(fi,ifieldhandle->mesh());
102+
auto ofieldhandle = CreateField(fieldfi,ifieldhandle->mesh());
99103
VField* ofield = ofieldhandle->vfield();
100104
ofield->resize_values();
101105

@@ -123,7 +127,7 @@ CalculateNormals::execute()
123127
if (val == 0.0) val = 1e-3;
124128
vec = vec*val;
125129
ofield->set_value(vec,idx);
126-
cnt++; if (cnt == 400) { cnt=0; update_progress(idx,num_values); }
130+
cnt++; //if (cnt == 400) { cnt=0; update_progress(idx,num_values); }
127131
}
128132
}
129133
else
@@ -144,10 +148,10 @@ CalculateNormals::execute()
144148
vec.safe_normalize();
145149
}
146150
ofield->set_value(vec,idx);
147-
cnt++; if (cnt == 400) { cnt=0; update_progress(idx,num_values); }
151+
cnt++; //if (cnt == 400) { cnt=0; update_progress(idx,num_values); }
148152
}
149153
}
150154

151-
sendOutput(OutputField, ofield);
155+
sendOutput(OutputField, ofieldhandle);
152156
}
153157
}

0 commit comments

Comments
 (0)