void wxVtkSceneManager::configureBaseView()
{
vtkInteractorStyleBaseView2D *interactorstylebaseview = vtkInteractorStyleBaseView2D::New();
-
_baseView->SetInteractorStyleBaseView(interactorstylebaseview);
-
// Important to activate the 2D interaction system
crea::wxVTKRenderWindowInteractor *iren = _baseView->GetWxVTKRenderWindowInteractor();
interactorstylebaseview->SetInteractor(iren);
iren->SetInteractorStyle(interactorstylebaseview);
interactorstylebaseview->SetwxVtkBaseView(_baseView);
-
_baseView->GetRenderer()->GetActiveCamera()->ParallelProjectionOn();
_baseView->GetRenderer()->ResetCamera(-100, 100, -100, 100, -1000, 1000);
- _baseView->GetRenderer()->GetActiveCamera()->Zoom(10);
-
-
+ _baseView->GetRenderer()->GetActiveCamera()->Zoom(20);
_baseView->GetRenderer()->SetBackground(0.9, 0.9, 0.9);
_baseView->GetRenderer()->GradientBackgroundOn();
-
// Actos Port_Text
_textActor = vtkTextActor3D::New();
// _textActor = vtkTextActor::New();
_textActor->SetPosition(-9999, -9999, GPOSITION_Z);
_textActor->SetInput("<void>");
- _textActor->GetTextProperty()->SetFontSize(60);
+//EED 2022-01-16
+// _textActor->GetTextProperty()->SetFontSize(60);
+ _textActor->GetTextProperty()->SetFontSize(40);
_textActor->GetTextProperty()->BoldOn();
+ _textActor->GetTextProperty()->SetFontFamilyToArial();
+ _textActor->GetTextProperty()->ShadowOff();
_textActor->GetTextProperty()->SetColor(PORTTEXT_NH_R, PORTTEXT_NH_G,PORTTEXT_NH_B);
-
_baseView->GetRenderer()->AddActor(_textActor);
-
// Actor Fill_Port_Text
-
//------------
- double xInic = 0;
- double yInic = 0;
- double zInic = GPOSITION_Z;
-
- vtkPolygon *aPolygon = vtkPolygon::New();
- _fillObjectActor = vtkActor::New();
+ double xInic = 0;
+ double yInic = 0;
+ double zInic = GPOSITION_Z;
+ vtkPolygon *aPolygon = vtkPolygon::New();
+ _fillObjectActor = vtkActor::New();
+ _pts = vtkPoints::New();
- _pts = vtkPoints::New();
-
- double w = 100, h = 10, b = h / 15, t = 3;
+/*
+ double w = 100, h = 10, b = h / 15, t = 3;
_pts->SetNumberOfPoints(21);
_pts->InsertPoint(0, xInic + w * 0.33 - t / 2, yInic, zInic);
_pts->InsertPoint(1, xInic + w * 0.33, yInic - t, zInic);
_pts->InsertPoint(18, xInic + b * 1, yInic + b * 2, zInic);
_pts->InsertPoint(19, xInic + b * 2, yInic + b * 1, zInic);
_pts->InsertPoint(20, xInic + b * 4, yInic + b * 0, zInic);
+ aPolygon->GetPointIds()->SetNumberOfIds(21);
+ for (int i = 0; i < 21; i++) {
+ {
+ aPolygon->GetPointIds()->SetId(i, i);
+ }
+*/
- aPolygon->GetPointIds()->SetNumberOfIds(21);
- for (int i = 0; i < 21; i++) {
+ double w = BOX_WIDTH, h = BOX_HEIGHT, t = PORT_HEIGHT;
+ _pts->SetNumberOfPoints(7);
+ _pts->InsertPoint(0, xInic + t/2.0 , yInic + t , zInic );
+ _pts->InsertPoint(1, xInic + w , yInic + t , zInic );
+ _pts->InsertPoint(2, xInic + w , yInic + t + h , zInic );
+ _pts->InsertPoint(3, xInic - t*1.5 , yInic + t + h , zInic );
+ _pts->InsertPoint(4, xInic - t*1.5 , yInic + t , zInic );
+ _pts->InsertPoint(5, xInic - t/2 , yInic + t , zInic );
+ _pts->InsertPoint(6, xInic , yInic , zInic );
+ aPolygon->GetPointIds()->SetNumberOfIds(8);
+ for (int i = 0; i < 8; i++)
+ {
aPolygon->GetPointIds()->SetId(i, i);
+ if (i==7) aPolygon->GetPointIds()->SetId(i, 0);
}
-
vtkUnstructuredGrid *aPolygonGrid = vtkUnstructuredGrid::New();
aPolygonGrid->Allocate(1, 1);
- aPolygonGrid->InsertNextCell(aPolygon->GetCellType(),
- aPolygon->GetPointIds());
+ aPolygonGrid->InsertNextCell(aPolygon->GetCellType(),aPolygon->GetPointIds());
aPolygonGrid->SetPoints(_pts);
_aPolygonMapper = vtkDataSetMapper::New();
-
//EED 2017-01-01 Migration VTK7
#if VTK_MAJOR_VERSION <= 5
_aPolygonMapper->SetInput(aPolygonGrid);
#else
_aPolygonMapper->SetInputData(aPolygonGrid);
#endif
-
-
_fillObjectActor->SetMapper(_aPolygonMapper);
- _fillObjectActor->GetProperty()->SetColor(PORTFILL_NH_R, PORTFILL_NH_G,
- PORTFILL_NH_B);
+ _fillObjectActor->GetProperty()->SetColor(PORTFILL_NH_R, PORTFILL_NH_G,PORTFILL_NH_B);
_fillObjectActor->GetProperty()->SetOpacity(0);
_aPolygonMapper->Modified();
-
_baseView->GetRenderer()->AddActor(_fillObjectActor);
}
* @param WidthLine
*/
//EED2017
- manContourView->SetWidthLine( 3 ) ;
- manContourView->SetShowText(false);
+// manContourView->SetWidthLine( 3 ) ;
+//EED 2022-01-16
+ manContourView->SetWidthLine( 1 ) ;
+
+ manContourView->SetShowText(false);
manContourControl->SetModelView(manContourModel, manContourView);
// PortText
if ( ( _bugTextActor_text==desc->getStatusText() ) || (_bugTextActor_status==0) )
{
- _bugTextActor_status = 1;
- okPortMessage = true;
- py = py + 5;
- _textActor->SetScale(0.1);
- std::string tmp = desc->getStatusText()+"\n";
+ _bugTextActor_status = 1;
+ okPortMessage = true;
+//EED 2022-01-16
+// py = py + 5;
+// _textActor->SetScale(0.1);
+// py = py + 5*0.5;
+ _textActor->SetScale(0.05,0.05,1);
+
+ std::string tmp = desc->getStatusText()+"\n";
_textActor->SetInput( tmp.c_str() );
- _textActor->SetPosition(px - 25, py + 1, pz + 2);
+// _textActor->SetPosition(px - 25, py + 1, pz + 2);
+// _textActor->SetPosition(px , py-PORT_HEIGHT/4 , pz + 2);
+ _textActor->SetPosition(px , py-PORT_HEIGHT , pz + 2);
_textActor->Modified();
// FillPortText
- px = px - 33;
- //py = py;
- _fillObjectActor->SetScale(1);
- _fillObjectActor->GetProperty()->SetOpacity(0.50);
- _fillObjectActor->SetPosition(px, py, 1);
+//EED 2022-01-16
+// px = px - 33;
+ _fillObjectActor->SetScale(1);
+// px = px - 33*0.7;
+// _fillObjectActor->SetScale(0.7,0.5,1);
+ _fillObjectActor->GetProperty()->SetOpacity(0.75);
+ _fillObjectActor->SetPosition( px, py + PORT_HEIGHT/2.0 , 1);
_aPolygonMapper->Modified();
} else {
- _bugTextActor_status = 2;
+ _bugTextActor_status= 2;
} // _bugTextActor_tex
- _bugTextActor_text = desc->getStatusText();
+ _bugTextActor_text = desc->getStatusText();
} // if GPORT
} //if state
if (line == "# - BBTKGEditor v 1.4 BBG BlackBox Diagram file") {
version = line.substr(18, 3);
}
+ if (line == "# - BBTKGEditor v 1.5 BBG BlackBox Diagram file") {
+ version = line.substr(18, 3);
+ }
} else if (line == "APP_START") {
start = true;
break;
}
- if (start) {
+ if (start)
+ {
if ((version != "1.0") && (version != "1.1")) {
getCleanLine(inputStream, line);//CATEGORY:<category of the box>
result = strtok(NULL, delims);
std::string isComplexBox(result);
- if (isComplexBox == "TRUE") {
+ if (isComplexBox == "TRUE")
+ {
_isComplexBox = true;
- if ((version != "1.0") && (version != "1.1")) {
+ if ((version != "1.0") && (version != "1.1"))
+ {
getCleanLine(inputStream, line);//COMPLEXNAME:<name of the complex box>
char complexboxnameTmp[255];
strcpy(complexboxnameTmp, line.c_str());
result = strtok(packagenameTmp, delims);
result = strtok(NULL, delims);
SetCbPackageName(result);
- }
+ } // if version !1.0 !1.1
if(version < "1.4")
{
std::istringstream inps(result);
inps >> numInputs;
- for (int i = 0; i < numInputs; i++) {
+ for (int i = 0; i < numInputs; i++)
+ {
//----------
getCleanLine(inputStream, line);//COMPLEX_PORT
getCleanLine(inputStream, line);//name
if (version<="1.2")
{
if (zIn==900) zIn=GPOSITION_Z;
- }
+ } // if version <=1.2
getCleanLine(inputStream, line);//FIN_COMPLEX_PORT
configGComBoxInputOutputPort(true, inputPortName, xIn, yIn, zIn);
} // for input complex box
- }
+ } // if version < 1.4
std::istringstream outps(result);
outps >> numOutputs;
- for (int i = 0; i < numOutputs; i++) {
+ for (int i = 0; i < numOutputs; i++)
+ {
//----------
getCleanLine(inputStream, line);//COMPLEX_PORT
getCleanLine(inputStream, line);//name
{
if (zIn==900) zIn=GPOSITION_Z;
}
-
+//EED 2022-01-16
+ if (version<="1.4")
+ {
+ xIn = xIn*0.70;
+ yIn = yIn*0.30;
+ }
+
getCleanLine(inputStream, line);//FIN_COMPLEX_PORT
configGComBoxInputOutputPort(false, outputPortName, xIn, yIn, zIn);
} // for output complex box
+ } // if isComplexBox
- } // complex box
-
+
// RaC2012 2nd Hackfest
if(version >= "1.4")
{
std::istringstream inps(result);
inps >> numInputs;
- for (int i = 0; i < numInputs; i++) {
- //----------
+ for (int i = 0; i < numInputs; i++)
+ {
getCleanLine(inputStream, line);//COMPLEX_PORT
getCleanLine(inputStream, line);//name
std::string inputPortName(line);
-
- //----------
getCleanLine(inputStream, line);//xInic:yInic:zInic
char coord[80];
strcpy(coord, line.c_str());
std::string yInic(result);
result = strtok(NULL, delims);//zInic
std::string zInic(result);
-
double xIn, yIn, zIn;
std::istringstream xSt(xInic);
xSt >> xIn;
ySt >> yIn;
std::istringstream zSt(zInic);
zSt >> zIn;
-
if (version<="1.2")
{
if (zIn==900) zIn=GPOSITION_Z;
}
-
+//EED 2022-01-16
+ if (version<="1.4")
+ {
+ xIn = xIn*0.70;
+ yIn = yIn*0.30;
+ }
getCleanLine(inputStream, line);//FIN_COMPLEX_PORT
configGComBoxInputOutputPort(true, inputPortName, xIn, yIn, zIn);
-
} // for external input
- }
-
+ } // if(version >= "1.4")
//----------
getCleanLine(inputStream, line);//BOXES:num
std::string yInic(result);
result = strtok(NULL, delims);//zInic
std::string zInic(result);
-
double xIn, yIn, zIn;
std::istringstream xSt(xInic);
xSt >> xIn;
std::istringstream zSt(zInic);
zSt >> zIn;
-
if (version<="1.2")
{
if (zIn==900) zIn=GPOSITION_Z;
}
-
-
+//EED 2022-01-16
+ if (version<="1.4")
+ {
+ xIn = xIn*0.70;
+ yIn = yIn*0.30;
+ }
//----------
getCleanLine(inputStream, line);//xEnd:yEnd:zEnd
strcpy(coord, line.c_str());
{
if (zEn==900) zEn=GPOSITION_Z;
}
-
+//EED 2022-01-16
+ yEn = yIn-BOX_HEIGHT;
bool boxExecutable = false;
if (isExec == "TRUE")
strcat(result,tmpString.c_str());
}
std::string value(result);
-
bbmod->setValueToInput(name, value);
-
getCleanLine(inputStream, line);//PORT o FIN_BOX
port = line.substr(0, 4);
} // while
strcpy(conns, line.c_str());
result = strtok(conns, delims);
result = strtok(NULL, delims);
-
int numConns;
std::istringstream isCons(result);
isCons >> numConns;
//----------
getCleanLine(inputStream, line);//CONNECTION
getCleanLine(inputStream, line);//Startbox.PortName:EndBox.PortName
-
char connec[200];
strcpy(connec, line.c_str());
result = strtok(connec, delims);
std::string nameEndBox(result);
result = strtok(NULL, delims);
std::string nameEndPort(result);
-
int idCon = configGConnetion(nameStartBox, nameStartPort,nameEndBox, nameEndPort);
-
if (version != "1.0") {
//Readding control points of the manualContour
- GConnectorController *tempp = (GConnectorController*) _controllers[idCon];
- GConnectorModel *conMod = (GConnectorModel*) tempp->getModel();
- vtkGConnectorView *conView = (vtkGConnectorView*) tempp->getView();
+ GConnectorController *tempp = (GConnectorController*) _controllers[idCon];
+ GConnectorModel *conMod = (GConnectorModel*) tempp->getModel();
+ vtkGConnectorView *conView = (vtkGConnectorView*) tempp->getView();
getCleanLine(inputStream, line); //NumberOfControlPoints:##
strcpy(conns, line.c_str());
result = strtok(conns, delims);
result = strtok(NULL, delims);
-
int numberOfControlPoints;
std::istringstream isCons(result);
isCons >> numberOfControlPoints;
-
for (int ii = 0; ii < numberOfControlPoints; ii++) {
getCleanLine(inputStream, line); //XX:YY:ZZ
char connec[200];
strcpy(connec, line.c_str());
-
double px, py, pz;
result = strtok(connec, delims);
std::istringstream isPointX(result);
result = strtok(NULL, delims);
std::istringstream isPointZ(result);
isPointZ >> pz;
-
if (version<="1.2")
{
if (pz==900) pz=GPOSITION_Z;
}
-
+//EED 2022-01-16
+ if (version<="1.4")
+ {
+ px = px*0.70;
+ py = py*0.30;
+ }
conMod->getManualContourModel()->InsertPoint_id(ii + 1, px, py, pz);
conView->getManualContourView()->AddPoint();
}
- }// version !=1.0
+ }// if version !=1.0
} // for numConns
- } // start
+ } // if start
}
//=========================================================================