Import Geant4 0.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-01 15:25:35 +02:00
parent 54d6b71f95
commit b97f8d0df7
3237 changed files with 807095 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
# $Id: GNUmakefile,v 1.1 1998/10/14 15:54:47 allison Exp $
# --------------------------------------------------------------
# GNUmakefile for tests module. Gabriele Cosmo, 27/06/98.
# --------------------------------------------------------------
name := exampleE03
G4TARGET := $(name)
G4EXLIB := true
ifndef G4INSTALL
G4INSTALL = ../../..
endif
.PHONY: all
all: lib bin
include $(G4INSTALL)/config/binmake.gmk
+32
View File
@@ -0,0 +1,32 @@
$Id: History,v 1.1 1998/10/14 15:54:47 allison Exp $
-------------------------------------------------------------------
=========================================================
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
=========================================================
Novice Example 09 History file
------------------------------
This file should be used by the test developer to briefly
summarize all major modifications introduced in the code and keep
track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
14th October 1998 John Allison
- Moved from N09.
21st August 1998 John Allison
- Renamed files N09* to ExN09*.
9th August 1998 John Allison
- Changed G4UIterminal to G4UIGAG.
7th August 1998 John Allison
- Moved from test05.
June 27, 98 G. Cosmo
- Created.
+19
View File
@@ -0,0 +1,19 @@
$Id: README,v 1.1 1998/10/14 15:54:48 allison Exp $
-------------------------------------------------------------------
=========================================================
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
=========================================================
ExampleN09
----------
Jari Sulkimo
31/10/97
This is an example using particle tracking in STEP CAD-models
from the CMS detector project. The model can be changed
by substituting the model name in the Parameters.txt file's
first line with the other model name in the file.
+52
View File
@@ -0,0 +1,52 @@
// $Id: exampleE03.cc,v 1.2 1998/12/08 16:37:25 allison Exp $
#include "ExE03DetectorConstruction.hh"
#include "ExE03RunAction.hh"
#include "ExE03PrimaryGeneratorAction.hh"
#include "ExE03PhysicsList.hh"
#include "G4AssemblyCreator.hh"
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4UIterminal.hh"
int main(int argc,char** argv) {
// Run manager
G4RunManager * runManager = new G4RunManager;
// UserInitialization classes
runManager->SetUserInitialization(new ExE03DetectorConstruction);
runManager->SetUserInitialization(new ExE03PhysicsList);
// UserAction classes
runManager->SetUserAction(new ExE03RunAction);
runManager->SetUserAction(new ExE03PrimaryGeneratorAction);
// User interactions
// Define (G)UI for interactive mode
if(argc==1)
{
// G4UIterminal is a (dumb) terminal.
G4UIsession * session = new G4UIterminal;
session->SessionStart();
delete session;
}
else
// Batch mode
{
G4UImanager * UI = G4UImanager::GetUIpointer();
G4String command = "/control/execute ";
G4String fileName = argv[1];
UI->ApplyCommand(command+fileName);
}
delete runManager;
return 0;
}
+2
View File
@@ -0,0 +1,2 @@
G4Axis2PlacementsCreator default constructor calling G4GeometryTable::RegisterObject(this)
G4Axis2PlacementsCreator default constructor calling G4GeometryTable::RegisterObject(this)
+15
View File
@@ -0,0 +1,15 @@
/control/verbose 0
/tracking/verbose 0
#
# Initialize GEANT4
#
/run/initialize
#
# Run 100 events
#
/run/beamOn 1
#
# Termination
#
exit
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,42 @@
#ifndef ExE03DetectorConstruction_h
#define ExE03DetectorConstruction_h 1
#include "G4PVPlacement.hh"
#include "G4LogicalVolume.hh"
#include "G4Box.hh"
#include "G4Tubs.hh"
#include "G4Timer.hh"
#include "G4Material.hh"
#include "G4Element.hh"
#include "G4VUserDetectorConstruction.hh"
#include "G4Assembly.hh"
#include "G4AssemblyCreator.hh"
#include "globals.hh"
class ExE03DetectorConstruction : public G4VUserDetectorConstruction
{
public:
ExE03DetectorConstruction();
~ExE03DetectorConstruction();
public:
G4VPhysicalVolume* Construct();
private:
G4double expHall_x;
G4double expHall_y;
G4double expHall_z;
G4double calBox_x;
G4double calBox_y;
G4double calBox_z;
G4double rotAngle;
G4double calPos;
G4double trackerRadius;
G4double trackerHight;
G4double trackerPos;
};
#endif
@@ -0,0 +1,43 @@
// $Id: ExE03PhysicsList.hh,v 1.1 1998/10/14 15:55:45 allison Exp $
// ------------------------------------------------------------
#ifndef ExE03PhysicsList_h
#define ExE03PhysicsList_h 1
#include "G4VUserPhysicsList.hh"
#include "globals.hh"
class ExE03PhysicsList: public G4VUserPhysicsList
{
public:
ExE03PhysicsList();
virtual ~ExE03PhysicsList();
protected:
// Construct particle and physics
virtual void ConstructParticle();
virtual void ConstructProcess();
//
virtual void SetCuts(G4double aCut);
protected:
// these methods Construct particles
virtual void ConstructBosons();
virtual void ConstructLeptons();
virtual void ConstructMesons();
virtual void ConstructBarions();
virtual void ConstructIons();
protected:
// these methods Construct physics processes and register them
virtual void ConstructGeneral();
virtual void ConstructEM();
virtual void ConstructHad();
virtual void ConstructLeptHad();
};
#endif
@@ -0,0 +1,25 @@
#ifndef ExE03PrimaryGeneratorAction_h
#define ExE03PrimaryGeneratorAction_h 1
#include "G4VUserPrimaryGeneratorAction.hh"
class G4ParticleGun;
class G4Event;
class ExE03PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
{
public:
ExE03PrimaryGeneratorAction();
~ExE03PrimaryGeneratorAction();
public:
void GeneratePrimaries(G4Event* anEvent);
private:
G4ParticleGun* particleGun;
};
#endif
+34
View File
@@ -0,0 +1,34 @@
#ifndef ExE03RunAction_h
#define ExE03RunAction_h 1
#include "G4UserRunAction.hh"
#include "G4Timer.hh"
#include "globals.hh"
class G4Run;
class ExE03RunAction : public G4UserRunAction
{
public:
ExE03RunAction();
~ExE03RunAction();
public:
void BeginOfRunAction(G4Run* aRun);
void EndOfRunAction(G4Run* aRun);
private:
G4Timer* timer;
G4int runIDcounter;
};
#endif
@@ -0,0 +1,112 @@
#include "ExE03DetectorConstruction.hh"
ExE03DetectorConstruction::ExE03DetectorConstruction()
{
expHall_x = 1111600.*cm;
expHall_y = 1111600.*cm;
expHall_z = 1111600.*cm;
calBox_x = 50.*cm;
calBox_y = 50.*cm;
calBox_z = 50.*cm;
rotAngle = 30.*deg;
calPos = 200.*cm;
trackerRadius = 50.*cm;
trackerHight = 100.*cm;
trackerPos = -200.*cm;
}
ExE03DetectorConstruction::~ExE03DetectorConstruction()
{;}
G4VPhysicalVolume* ExE03DetectorConstruction::Construct()
{
//------------------------------------------------------ materials
G4double a, iz, z, density;
G4String name, symbol;
G4int nel;
a = 14.01*g/mole;
G4Element* elN = new G4Element(name="Nitrogen", symbol="N", iz=7., a);
a = 16.00*g/mole;
G4Element* elO = new G4Element(name="Oxygen", symbol="O", iz=8., a);
density = 1.29e-03*g/cm3;
G4Material* Air = new G4Material(name="Air", density, nel=2);
Air->AddElement(elN, .7);
Air->AddElement(elO, .3);
a = 207.19*g/mole;
density = 11.35*g/cm3;
G4Material* Lead = new G4Material(name="Lead", z=82., a, density);
a = 39.95*g/mole;
density = 1.782e-03*g/cm3;
G4Material* Ar = new G4Material(name="ArgonGas", z=18., a, density);
//------------------------------------------------------ volumes
//------------------------------ experimental hall
G4Box * experimentalHall_box
= new G4Box("expHall_b",expHall_x,expHall_y,expHall_z);
G4LogicalVolume * experimentalHall_log
= new G4LogicalVolume(experimentalHall_box,Air,"expHall_L",0,0,0);
G4VPhysicalVolume * experimentalHall_phys
= new G4PVPlacement(0,G4ThreeVector(),"expHall_P",
experimentalHall_log,0,false,0);
// STEP assembly creation
G4AssemblyCreator MyAC("stepfiles/G4rod_place_asm.stp");
// G4AssemblyCreator MyAC("stepfiles/CMSTracker.Step");
//G4AssemblyCreator MyAC("stepfiles/coil1.Step");
MyAC.ReadStepFile();
STEPentity* ent=0;
MyAC.CreateG4Geometry(*ent);
void *tmp = MyAC.GetCreatedObject();
G4Assembly* assembly = new G4Assembly();
assembly->SetPlacedVector(*(G4PlacedVector*)tmp);
G4PlacedSolid* ps=0;
G4int solids = assembly->GetNumberOfSolids();
for(G4int c=0;c<solids;c++)
{
ps = assembly->GetPlacedSolid(c);
G4LogicalVolume* lv = new G4LogicalVolume(ps->GetSolid(),
Lead,
"STEPlog");
HepRotation* hr = ps->GetRotation();
G4ThreeVector* tr = ps->GetTranslation();
new G4PVPlacement(hr,
*tr,
ps->GetSolid()->GetName(),
lv,
experimentalHall_phys,
false,
c);
}
return experimentalHall_phys;
}
@@ -0,0 +1,266 @@
// $Id: ExE03PhysicsList.cc,v 1.1 1998/10/14 15:56:09 allison Exp $
#include "globals.hh"
#include "ExE03PhysicsList.hh"
#include "G4ParticleDefinition.hh"
#include "G4ParticleWithCuts.hh"
#include "G4ProcessManager.hh"
#include "G4ProcessVector.hh"
#include "G4ParticleTypes.hh"
#include "G4ParticleTable.hh"
#include "G4Material.hh"
#include "G4MaterialTable.hh"
#include "G4ios.hh"
#include <iomanip.h>
ExE03PhysicsList::ExE03PhysicsList(): G4VUserPhysicsList()
{
SetVerboseLevel(1);
}
ExE03PhysicsList::~ExE03PhysicsList()
{
}
void ExE03PhysicsList::ConstructParticle()
{
// In this method, static member functions should be called
// for all particles which you want to use.
// This ensures that objects of these particle types will be
// created in the program.
ConstructBosons();
ConstructLeptons();
ConstructMesons();
ConstructBarions();
}
void ExE03PhysicsList::ConstructBosons()
{
// pseudo-particles
G4Geantino::GeantinoDefinition();
G4ChargedGeantino::ChargedGeantinoDefinition();
// gamma
G4Gamma::GammaDefinition();
// optical photon
G4OpticalPhoton::OpticalPhotonDefinition();
}
void ExE03PhysicsList::ConstructLeptons()
{
// leptons
G4MuonPlus::MuonPlusDefinition();
G4MuonMinus::MuonMinusDefinition();
G4TauMinus::TauMinusDefinition();
G4TauPlus::TauPlusDefinition();
G4Electron::ElectronDefinition();
G4Positron::PositronDefinition();
G4NeutrinoTau::NeutrinoTauDefinition();
G4AntiNeutrinoTau::AntiNeutrinoTauDefinition();
G4NeutrinoMu::NeutrinoMuDefinition();
G4AntiNeutrinoMu::AntiNeutrinoMuDefinition();
G4NeutrinoE::NeutrinoEDefinition();
G4AntiNeutrinoE::AntiNeutrinoEDefinition();
}
void ExE03PhysicsList::ConstructMesons()
{
// mesons
G4PionPlus::PionPlusDefinition();
G4PionMinus::PionMinusDefinition();
G4PionZero::PionZeroDefinition();
G4Eta::EtaDefinition();
G4KaonPlus::KaonPlusDefinition();
G4KaonMinus::KaonMinusDefinition();
G4KaonZero::KaonZeroDefinition();
G4AntiKaonZero::AntiKaonZeroDefinition();
G4KaonZeroLong::KaonZeroLongDefinition();
G4KaonZeroShort::KaonZeroShortDefinition();
G4DMesonPlus::DMesonPlusDefinition();
G4DMesonMinus::DMesonMinusDefinition();
G4DMesonZero::DMesonZeroDefinition();
G4AntiDMesonZero::AntiDMesonZeroDefinition();
G4DsMesonPlus::DsMesonPlusDefinition();
G4DsMesonMinus::DsMesonMinusDefinition();
G4JPsi::JPsiDefinition();
G4BMesonPlus::BMesonPlusDefinition();
G4BMesonMinus::BMesonMinusDefinition();
G4BMesonZero::BMesonZeroDefinition();
G4AntiBMesonZero::AntiBMesonZeroDefinition();
G4BsMesonZero::BsMesonZeroDefinition();
G4AntiBsMesonZero::AntiBsMesonZeroDefinition();
}
void ExE03PhysicsList::ConstructBarions()
{
// barions
G4Proton::ProtonDefinition();
G4AntiProton::AntiProtonDefinition();
G4Neutron::NeutronDefinition();
G4AntiNeutron::AntiNeutronDefinition();
G4Lambda::LambdaDefinition();
G4AntiLambda::AntiLambdaDefinition();
G4SigmaZero::SigmaZeroDefinition();
G4AntiSigmaZero::AntiSigmaZeroDefinition();
G4SigmaPlus::SigmaPlusDefinition();
G4AntiSigmaPlus::AntiSigmaPlusDefinition();
G4SigmaMinus::SigmaMinusDefinition();
G4AntiSigmaMinus::AntiSigmaMinusDefinition();
G4XiZero::XiZeroDefinition();
G4AntiXiZero::AntiXiZeroDefinition();
G4XiMinus::XiMinusDefinition();
G4AntiXiMinus::AntiXiMinusDefinition();
G4OmegaMinus::OmegaMinusDefinition();
G4AntiOmegaMinus::AntiOmegaMinusDefinition();
G4LambdacPlus::LambdacPlusDefinition();
G4SigmacPlusPlus::SigmacPlusPlusDefinition();
G4SigmacPlus::SigmacPlusDefinition();
G4SigmacZero::SigmacZeroDefinition();
G4XicPlus::XicPlusDefinition();
G4XicZero::XicZeroDefinition();
G4OmegacZero::OmegacZeroDefinition();
G4AntiLambdacPlus::AntiLambdacPlusDefinition();
G4AntiSigmacPlusPlus::AntiSigmacPlusPlusDefinition();
G4AntiSigmacPlus::AntiSigmacPlusDefinition();
G4AntiSigmacZero::AntiSigmacZeroDefinition();
G4AntiXicPlus::AntiXicPlusDefinition();
G4AntiXicZero::AntiXicZeroDefinition();
G4AntiOmegacZero::AntiOmegacZeroDefinition();
}
void ExE03PhysicsList::ConstructIons()
{
// nuclei
G4Alpha::AlphaDefinition();
G4Deuteron::DeuteronDefinition();
G4Triton::TritonDefinition();
}
void ExE03PhysicsList::ConstructProcess()
{
AddTransportation();
ConstructEM();
ConstructLeptHad();
ConstructHad();
ConstructGeneral();
}
#include "G4ComptonScattering.hh"
#include "G4GammaConversion.hh"
#include "G4PhotoElectricEffect.hh"
#include "G4MultipleScattering.hh"
#include "G4eIonisation.hh"
#include "G4eBremsstrahlung.hh"
#include "G4eplusAnnihilation.hh"
#include "G4MuIonisation.hh"
#include "G4MuBremsstrahlung.hh"
#include "G4MuPairProduction.hh"
#include "G4hIonisation.hh"
void ExE03PhysicsList::ConstructEM()
{
theParticleIterator->reset();
while( (*theParticleIterator)() ){
G4ParticleDefinition* particle = theParticleIterator->value();
G4ProcessManager* pmanager = particle->GetProcessManager();
G4String particleName = particle->GetParticleName();
if (particleName == "gamma") {
// gamma
// Construct processes for gamma
pmanager->AddDiscreteProcess(new G4GammaConversion());
pmanager->AddDiscreteProcess(new G4ComptonScattering());
pmanager->AddDiscreteProcess(new G4PhotoElectricEffect());
} else if (particleName == "e-") {
//electron
// Construct processes for electron
pmanager->AddProcess(new G4MultipleScattering(),-1,1,1);
pmanager->AddProcess(new G4eIonisation(),-1,2,2);
pmanager->AddProcess(new G4eBremsstrahlung(),-1,-1,3);
} else if (particleName == "e+") {
//positron
// Construct processes for positron
pmanager->AddProcess(new G4MultipleScattering(),-1,1,1);
pmanager->AddProcess(new G4eIonisation(),-1,2,2);
pmanager->AddProcess(new G4eBremsstrahlung(),-1,-1,3);
pmanager->AddProcess(new G4eplusAnnihilation(),0,-1,4);
} else if( particleName == "mu+" ||
particleName == "mu-" ) {
//muon
// Construct processes for muon+
pmanager->AddProcess(new G4MultipleScattering(),-1,1,1);
pmanager->AddProcess(new G4MuIonisation(),-1,2,2);
pmanager->AddProcess(new G4MuBremsstrahlung(),-1,-1,3);
pmanager->AddProcess(new G4MuPairProduction(),-1,-1,4);
} else {
if ((particle->GetPDGCharge() != 0.0) &&
(particle->GetParticleName() != "chargedgeantino")) {
// all others charged particles except geantino
pmanager->AddProcess(new G4MultipleScattering(),-1,1,1);
pmanager->AddProcess(new G4hIonisation(),-1,2,2);
}
}
}
}
void ExE03PhysicsList::ConstructHad()
{;}
void ExE03PhysicsList::ConstructLeptHad()
{;}
#include "G4Decay.hh"
void ExE03PhysicsList::ConstructGeneral()
{
G4Decay* theDecayProcess = new G4Decay();
theParticleIterator->reset();
while( (*theParticleIterator)() ){
G4ParticleDefinition* particle = theParticleIterator->value();
G4ProcessManager* pmanager = particle->GetProcessManager();
if (theDecayProcess->IsApplicable(*particle)) {
pmanager->AddProcess(theDecayProcess, INT_MAX, -1, INT_MAX);
}
}
}
void ExE03PhysicsList::SetCuts(G4double cut)
{
if (verboseLevel >0){
G4cout << "ExE03PhysicsList::SetCuts:";
G4cout << "CutLength : " << cut/mm << " (mm)" << endl;
}
// set cut values for gamma at first and for e- second and next for e+,
// because some processes for e+/e- need cut values for gamma
SetCutValue(cut, "gamma");
SetCutValue(cut, "e-");
SetCutValue(cut, "e+");
// set cut values for proton and anti_proton before all other hadrons
// because some processes for hadrons need cut values for proton/anti_proton
SetCutValue(cut, "proton");
SetCutValue(cut, "anti_proton");
SetCutValueForOthers(cut);
if (verboseLevel>1) {
DumpCutValuesTable();
}
}
@@ -0,0 +1,40 @@
#include "ExE03PrimaryGeneratorAction.hh"
#include "G4Event.hh"
#include "G4ParticleGun.hh"
#include "G4ParticleTable.hh"
#include "G4ParticleDefinition.hh"
#include "globals.hh"
ExE03PrimaryGeneratorAction::ExE03PrimaryGeneratorAction()
{
G4int n_particle = 1;
particleGun = new G4ParticleGun(n_particle);
}
ExE03PrimaryGeneratorAction::~ExE03PrimaryGeneratorAction()
{
delete particleGun;
}
void ExE03PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent)
{
G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable();
G4String particleName;
G4ParticleDefinition* particle
= particleTable->FindParticle(particleName="e-");
particleGun->SetParticleDefinition(particle);
particleGun->SetParticleMomentumDirection(G4ThreeVector(1.,0.,0.));
particleGun->SetParticleEnergy(20.*MeV);
particleGun->SetParticlePosition(G4ThreeVector(0,0,0));
particleGun->GeneratePrimaryVertex(anEvent);
}
+37
View File
@@ -0,0 +1,37 @@
#include "ExE03RunAction.hh"
#include "G4Run.hh"
#include "G4UImanager.hh"
#include "G4ios.hh"
ExE03RunAction::ExE03RunAction()
{
timer = new G4Timer;
runIDcounter = 0;
}
ExE03RunAction::~ExE03RunAction()
{
delete timer;
}
void ExE03RunAction::BeginOfRunAction(G4Run* aRun)
{
aRun->SetRunID(runIDcounter++);
G4UImanager* UI = G4UImanager::GetUIpointer();
UI->ApplyCommand("/event/Verbose 1");
UI->ApplyCommand("/tracking/Verbose 1");
G4cout << "### Run " << aRun->GetRunID() << " start." << endl;
timer->Start();
}
void ExE03RunAction::EndOfRunAction(G4Run* aRun)
{
timer->Stop();
G4cout << "number of event = " << aRun->GetNumberOfEvent()
<< " " << *timer << endl;
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,980 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION((''),'1');
FILE_NAME('ROD_PLACE_ASM','1998-02-27T10:19:15',('oriunno'),(''),'PRO/ENGINEER BY PARAMETRIC TECHNOLOGY CORPORATION, 9718','PRO/ENGINEER BY PARAMETRIC TECHNOLOGY CORPORATION, 9718','');
FILE_SCHEMA(('CONFIG_CONTROL_DESIGN'));
ENDSEC;
DATA;
#1=DIRECTION('',(1.E0,0.E0,0.E0));
#2=VECTOR('',#1,2.41E3);
#3=CARTESIAN_POINT('',(-1.205E3,-7.E0,-7.8E1));
#4=LINE('',#3,#2);
#5=DIRECTION('',(0.E0,0.E0,-1.E0));
#6=VECTOR('',#5,1.4E1);
#7=CARTESIAN_POINT('',(-1.205E3,-7.E0,-6.4E1));
#8=LINE('',#7,#6);
#9=DIRECTION('',(0.E0,1.E0,0.E0));
#10=VECTOR('',#9,1.6E1);
#11=CARTESIAN_POINT('',(-1.205E3,-7.E0,-7.8E1));
#12=LINE('',#11,#10);
#13=DIRECTION('',(0.E0,0.E0,1.E0));
#14=VECTOR('',#13,1.4E1);
#15=CARTESIAN_POINT('',(-1.205E3,9.E0,-7.8E1));
#16=LINE('',#15,#14);
#17=DIRECTION('',(0.E0,-1.E0,0.E0));
#18=VECTOR('',#17,1.5E0);
#19=CARTESIAN_POINT('',(-1.205E3,9.E0,-6.4E1));
#20=LINE('',#19,#18);
#21=DIRECTION('',(0.E0,0.E0,1.E0));
#22=VECTOR('',#21,1.25E1);
#23=CARTESIAN_POINT('',(-1.205E3,7.5E0,-7.65E1));
#24=LINE('',#23,#22);
#25=DIRECTION('',(0.E0,1.E0,0.E0));
#26=VECTOR('',#25,1.3E1);
#27=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-7.65E1));
#28=LINE('',#27,#26);
#29=DIRECTION('',(0.E0,0.E0,-1.E0));
#30=VECTOR('',#29,1.25E1);
#31=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-6.4E1));
#32=LINE('',#31,#30);
#33=DIRECTION('',(0.E0,-1.E0,0.E0));
#34=VECTOR('',#33,1.5E0);
#35=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-6.4E1));
#36=LINE('',#35,#34);
#37=DIRECTION('',(1.E0,0.E0,0.E0));
#38=VECTOR('',#37,2.41E3);
#39=CARTESIAN_POINT('',(-1.205E3,-7.E0,-6.4E1));
#40=LINE('',#39,#38);
#41=DIRECTION('',(1.E0,0.E0,0.E0));
#42=VECTOR('',#41,2.41E3);
#43=CARTESIAN_POINT('',(-1.205E3,9.E0,-6.4E1));
#44=LINE('',#43,#42);
#45=DIRECTION('',(1.E0,0.E0,0.E0));
#46=VECTOR('',#45,2.41E3);
#47=CARTESIAN_POINT('',(-1.205E3,7.5E0,-6.4E1));
#48=LINE('',#47,#46);
#49=DIRECTION('',(1.E0,0.E0,0.E0));
#50=VECTOR('',#49,2.41E3);
#51=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-6.4E1));
#52=LINE('',#51,#50);
#53=DIRECTION('',(1.E0,0.E0,0.E0));
#54=VECTOR('',#53,2.41E3);
#55=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-7.65E1));
#56=LINE('',#55,#54);
#57=DIRECTION('',(1.E0,0.E0,0.E0));
#58=VECTOR('',#57,2.41E3);
#59=CARTESIAN_POINT('',(-1.205E3,7.5E0,-7.65E1));
#60=LINE('',#59,#58);
#61=DIRECTION('',(0.E0,0.E0,1.E0));
#62=VECTOR('',#61,1.4E1);
#63=CARTESIAN_POINT('',(1.205E3,9.E0,-7.8E1));
#64=LINE('',#63,#62);
#65=DIRECTION('',(0.E0,1.E0,0.E0));
#66=VECTOR('',#65,1.6E1);
#67=CARTESIAN_POINT('',(1.205E3,-7.E0,-7.8E1));
#68=LINE('',#67,#66);
#69=DIRECTION('',(0.E0,0.E0,-1.E0));
#70=VECTOR('',#69,1.4E1);
#71=CARTESIAN_POINT('',(1.205E3,-7.E0,-6.4E1));
#72=LINE('',#71,#70);
#73=DIRECTION('',(0.E0,-1.E0,0.E0));
#74=VECTOR('',#73,1.5E0);
#75=CARTESIAN_POINT('',(1.205E3,-5.5E0,-6.4E1));
#76=LINE('',#75,#74);
#77=DIRECTION('',(0.E0,0.E0,-1.E0));
#78=VECTOR('',#77,1.25E1);
#79=CARTESIAN_POINT('',(1.205E3,-5.5E0,-6.4E1));
#80=LINE('',#79,#78);
#81=DIRECTION('',(0.E0,1.E0,0.E0));
#82=VECTOR('',#81,1.3E1);
#83=CARTESIAN_POINT('',(1.205E3,-5.5E0,-7.65E1));
#84=LINE('',#83,#82);
#85=DIRECTION('',(0.E0,0.E0,1.E0));
#86=VECTOR('',#85,1.25E1);
#87=CARTESIAN_POINT('',(1.205E3,7.5E0,-7.65E1));
#88=LINE('',#87,#86);
#89=DIRECTION('',(0.E0,-1.E0,0.E0));
#90=VECTOR('',#89,1.5E0);
#91=CARTESIAN_POINT('',(1.205E3,9.E0,-6.4E1));
#92=LINE('',#91,#90);
#93=DIRECTION('',(1.E0,0.E0,0.E0));
#94=VECTOR('',#93,2.41E3);
#95=CARTESIAN_POINT('',(-1.205E3,9.E0,-7.8E1));
#96=LINE('',#95,#94);
#97=CARTESIAN_POINT('',(-1.205E3,-7.E0,-7.8E1));
#98=CARTESIAN_POINT('',(-1.205E3,9.E0,-7.8E1));
#99=VERTEX_POINT('','',#97);
#100=VERTEX_POINT('','',#98);
#101=CARTESIAN_POINT('',(-1.205E3,9.E0,-6.4E1));
#102=VERTEX_POINT('','',#101);
#103=CARTESIAN_POINT('',(-1.205E3,-7.E0,-6.4E1));
#104=VERTEX_POINT('','',#103);
#105=CARTESIAN_POINT('',(1.205E3,-7.E0,-7.8E1));
#106=CARTESIAN_POINT('',(1.205E3,9.E0,-7.8E1));
#107=VERTEX_POINT('','',#105);
#108=VERTEX_POINT('','',#106);
#109=CARTESIAN_POINT('',(1.205E3,9.E0,-6.4E1));
#110=VERTEX_POINT('','',#109);
#111=CARTESIAN_POINT('',(1.205E3,-7.E0,-6.4E1));
#112=VERTEX_POINT('','',#111);
#113=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-7.65E1));
#114=CARTESIAN_POINT('',(-1.205E3,7.5E0,-7.65E1));
#115=VERTEX_POINT('','',#113);
#116=VERTEX_POINT('','',#114);
#117=CARTESIAN_POINT('',(-1.205E3,7.5E0,-6.4E1));
#118=VERTEX_POINT('','',#117);
#119=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-6.4E1));
#120=VERTEX_POINT('','',#119);
#121=CARTESIAN_POINT('',(1.205E3,-5.5E0,-7.65E1));
#122=CARTESIAN_POINT('',(1.205E3,7.5E0,-7.65E1));
#123=VERTEX_POINT('','',#121);
#124=VERTEX_POINT('','',#122);
#125=CARTESIAN_POINT('',(1.205E3,7.5E0,-6.4E1));
#126=VERTEX_POINT('','',#125);
#127=CARTESIAN_POINT('',(1.205E3,-5.5E0,-6.4E1));
#128=VERTEX_POINT('','',#127);
#129=CARTESIAN_POINT('',(-1.205E3,-7.E0,-7.8E1));
#130=DIRECTION('',(0.E0,0.E0,-1.E0));
#131=DIRECTION('',(0.E0,1.E0,0.E0));
#132=AXIS2_PLACEMENT_3D('',#129,#130,#131);
#133=PLANE('',#132);
#135=ORIENTED_EDGE('',*,*,#134,.F.);
#137=ORIENTED_EDGE('',*,*,#136,.T.);
#139=ORIENTED_EDGE('',*,*,#138,.T.);
#141=ORIENTED_EDGE('',*,*,#140,.F.);
#142=EDGE_LOOP('','',(#135,#137,#139,#141));
#143=FACE_OUTER_BOUND('',#142,.F.);
#144=ADVANCED_FACE('',(#143),'' ,#133,.T.);
#145=CARTESIAN_POINT('',(-1.205E3,0.E0,0.E0));
#146=DIRECTION('',(1.E0,0.E0,0.E0));
#147=DIRECTION('',(0.E0,0.E0,1.E0));
#148=AXIS2_PLACEMENT_3D('',#145,#146,#147);
#149=PLANE('',#148);
#151=ORIENTED_EDGE('',*,*,#150,.T.);
#152=ORIENTED_EDGE('',*,*,#134,.T.);
#154=ORIENTED_EDGE('',*,*,#153,.T.);
#156=ORIENTED_EDGE('',*,*,#155,.T.);
#158=ORIENTED_EDGE('',*,*,#157,.F.);
#160=ORIENTED_EDGE('',*,*,#159,.F.);
#162=ORIENTED_EDGE('',*,*,#161,.F.);
#164=ORIENTED_EDGE('',*,*,#163,.T.);
#165=EDGE_LOOP('','',(#151,#152,#154,#156,#158,#160,#162,#164));
#166=FACE_OUTER_BOUND('',#165,.F.);
#167=ADVANCED_FACE('',(#166),'' ,#149,.F.);
#168=CARTESIAN_POINT('',(-1.205E3,-7.E0,-6.4E1));
#169=DIRECTION('',(0.E0,-1.E0,0.E0));
#170=DIRECTION('',(0.E0,0.E0,-1.E0));
#171=AXIS2_PLACEMENT_3D('',#168,#169,#170);
#172=PLANE('',#171);
#173=ORIENTED_EDGE('',*,*,#150,.F.);
#175=ORIENTED_EDGE('',*,*,#174,.T.);
#177=ORIENTED_EDGE('',*,*,#176,.T.);
#178=ORIENTED_EDGE('',*,*,#136,.F.);
#179=EDGE_LOOP('','',(#173,#175,#177,#178));
#180=FACE_OUTER_BOUND('',#179,.F.);
#181=ADVANCED_FACE('',(#180),'' ,#172,.T.);
#182=CARTESIAN_POINT('',(-1.205E3,9.E0,-6.4E1));
#183=DIRECTION('',(0.E0,0.E0,1.E0));
#184=DIRECTION('',(0.E0,-1.E0,0.E0));
#185=AXIS2_PLACEMENT_3D('',#182,#183,#184);
#186=PLANE('',#185);
#188=ORIENTED_EDGE('',*,*,#187,.T.);
#190=ORIENTED_EDGE('',*,*,#189,.T.);
#191=ORIENTED_EDGE('',*,*,#174,.F.);
#192=ORIENTED_EDGE('',*,*,#163,.F.);
#193=EDGE_LOOP('','',(#188,#190,#191,#192));
#194=FACE_OUTER_BOUND('',#193,.F.);
#195=ADVANCED_FACE('',(#194),'' ,#186,.T.);
#196=CARTESIAN_POINT('',(-1.205E3,9.E0,-6.4E1));
#197=DIRECTION('',(0.E0,0.E0,1.E0));
#198=DIRECTION('',(0.E0,-1.E0,0.E0));
#199=AXIS2_PLACEMENT_3D('',#196,#197,#198);
#200=PLANE('',#199);
#202=ORIENTED_EDGE('',*,*,#201,.T.);
#204=ORIENTED_EDGE('',*,*,#203,.T.);
#206=ORIENTED_EDGE('',*,*,#205,.F.);
#207=ORIENTED_EDGE('',*,*,#155,.F.);
#208=EDGE_LOOP('','',(#202,#204,#206,#207));
#209=FACE_OUTER_BOUND('',#208,.F.);
#210=ADVANCED_FACE('',(#209),'' ,#200,.T.);
#211=CARTESIAN_POINT('',(-1.205E3,-5.5E0,-6.4E1));
#212=DIRECTION('',(0.E0,-1.E0,0.E0));
#213=DIRECTION('',(0.E0,0.E0,-1.E0));
#214=AXIS2_PLACEMENT_3D('',#211,#212,#213);
#215=PLANE('',#214);
#216=ORIENTED_EDGE('',*,*,#161,.T.);
#218=ORIENTED_EDGE('',*,*,#217,.T.);
#220=ORIENTED_EDGE('',*,*,#219,.F.);
#221=ORIENTED_EDGE('',*,*,#187,.F.);
#222=EDGE_LOOP('','',(#216,#218,#220,#221));
#223=FACE_OUTER_BOUND('',#222,.F.);
#224=ADVANCED_FACE('',(#223),'' ,#215,.F.);
#225=CARTESIAN_POINT('',(-1.205E3,-7.E0,-7.65E1));
#226=DIRECTION('',(0.E0,0.E0,-1.E0));
#227=DIRECTION('',(0.E0,1.E0,0.E0));
#228=AXIS2_PLACEMENT_3D('',#225,#226,#227);
#229=PLANE('',#228);
#230=ORIENTED_EDGE('',*,*,#159,.T.);
#232=ORIENTED_EDGE('',*,*,#231,.T.);
#234=ORIENTED_EDGE('',*,*,#233,.F.);
#235=ORIENTED_EDGE('',*,*,#217,.F.);
#236=EDGE_LOOP('','',(#230,#232,#234,#235));
#237=FACE_OUTER_BOUND('',#236,.F.);
#238=ADVANCED_FACE('',(#237),'' ,#229,.F.);
#239=CARTESIAN_POINT('',(-1.205E3,7.5E0,-7.8E1));
#240=DIRECTION('',(0.E0,1.E0,0.E0));
#241=DIRECTION('',(0.E0,0.E0,1.E0));
#242=AXIS2_PLACEMENT_3D('',#239,#240,#241);
#243=PLANE('',#242);
#244=ORIENTED_EDGE('',*,*,#157,.T.);
#245=ORIENTED_EDGE('',*,*,#205,.T.);
#247=ORIENTED_EDGE('',*,*,#246,.F.);
#248=ORIENTED_EDGE('',*,*,#231,.F.);
#249=EDGE_LOOP('','',(#244,#245,#247,#248));
#250=FACE_OUTER_BOUND('',#249,.F.);
#251=ADVANCED_FACE('',(#250),'' ,#243,.F.);
#252=CARTESIAN_POINT('',(1.205E3,0.E0,0.E0));
#253=DIRECTION('',(1.E0,0.E0,0.E0));
#254=DIRECTION('',(0.E0,0.E0,1.E0));
#255=AXIS2_PLACEMENT_3D('',#252,#253,#254);
#256=PLANE('',#255);
#258=ORIENTED_EDGE('',*,*,#257,.F.);
#259=ORIENTED_EDGE('',*,*,#138,.F.);
#260=ORIENTED_EDGE('',*,*,#176,.F.);
#261=ORIENTED_EDGE('',*,*,#189,.F.);
#262=ORIENTED_EDGE('',*,*,#219,.T.);
#263=ORIENTED_EDGE('',*,*,#233,.T.);
#264=ORIENTED_EDGE('',*,*,#246,.T.);
#265=ORIENTED_EDGE('',*,*,#203,.F.);
#266=EDGE_LOOP('','',(#258,#259,#260,#261,#262,#263,#264,#265));
#267=FACE_OUTER_BOUND('',#266,.F.);
#268=ADVANCED_FACE('',(#267),'' ,#256,.T.);
#269=CARTESIAN_POINT('',(-1.205E3,9.E0,-7.8E1));
#270=DIRECTION('',(0.E0,1.E0,0.E0));
#271=DIRECTION('',(0.E0,0.E0,1.E0));
#272=AXIS2_PLACEMENT_3D('',#269,#270,#271);
#273=PLANE('',#272);
#274=ORIENTED_EDGE('',*,*,#153,.F.);
#275=ORIENTED_EDGE('',*,*,#140,.T.);
#276=ORIENTED_EDGE('',*,*,#257,.T.);
#277=ORIENTED_EDGE('',*,*,#201,.F.);
#278=EDGE_LOOP('','',(#274,#275,#276,#277));
#279=FACE_OUTER_BOUND('',#278,.F.);
#280=ADVANCED_FACE('',(#279),'' ,#273,.T.);
#281=CLOSED_SHELL('',(#144,#167,#181,#195,#210,#224,#238,#251,#268,#280));
#282=MANIFOLD_SOLID_BREP('',#281);
#283=DIRECTION('',(1.E0,0.E0,0.E0));
#284=VECTOR('',#283,2.41E3);
#285=CARTESIAN_POINT('',(-1.205E3,9.E0,6.4E1));
#286=LINE('',#285,#284);
#287=DIRECTION('',(0.E0,0.E0,1.E0));
#288=VECTOR('',#287,1.4E1);
#289=CARTESIAN_POINT('',(-1.205E3,9.E0,6.4E1));
#290=LINE('',#289,#288);
#291=DIRECTION('',(0.E0,-1.E0,0.E0));
#292=VECTOR('',#291,1.6E1);
#293=CARTESIAN_POINT('',(-1.205E3,9.E0,7.8E1));
#294=LINE('',#293,#292);
#295=DIRECTION('',(0.E0,0.E0,-1.E0));
#296=VECTOR('',#295,1.4E1);
#297=CARTESIAN_POINT('',(-1.205E3,-7.E0,7.8E1));
#298=LINE('',#297,#296);
#299=DIRECTION('',(0.E0,1.E0,0.E0));
#300=VECTOR('',#299,1.5E0);
#301=CARTESIAN_POINT('',(-1.205E3,-7.E0,6.4E1));
#302=LINE('',#301,#300);
#303=DIRECTION('',(0.E0,0.E0,-1.E0));
#304=VECTOR('',#303,1.25E1);
#305=CARTESIAN_POINT('',(-1.205E3,-5.5E0,7.65E1));
#306=LINE('',#305,#304);
#307=DIRECTION('',(0.E0,-1.E0,0.E0));
#308=VECTOR('',#307,1.3E1);
#309=CARTESIAN_POINT('',(-1.205E3,7.5E0,7.65E1));
#310=LINE('',#309,#308);
#311=DIRECTION('',(0.E0,0.E0,1.E0));
#312=VECTOR('',#311,1.25E1);
#313=CARTESIAN_POINT('',(-1.205E3,7.5E0,6.4E1));
#314=LINE('',#313,#312);
#315=DIRECTION('',(0.E0,1.E0,0.E0));
#316=VECTOR('',#315,1.5E0);
#317=CARTESIAN_POINT('',(-1.205E3,7.5E0,6.4E1));
#318=LINE('',#317,#316);
#319=DIRECTION('',(1.E0,0.E0,0.E0));
#320=VECTOR('',#319,2.41E3);
#321=CARTESIAN_POINT('',(-1.205E3,9.E0,7.8E1));
#322=LINE('',#321,#320);
#323=DIRECTION('',(0.E0,0.E0,-1.E0));
#324=VECTOR('',#323,1.4E1);
#325=CARTESIAN_POINT('',(1.205E3,-7.E0,7.8E1));
#326=LINE('',#325,#324);
#327=DIRECTION('',(0.E0,-1.E0,0.E0));
#328=VECTOR('',#327,1.6E1);
#329=CARTESIAN_POINT('',(1.205E3,9.E0,7.8E1));
#330=LINE('',#329,#328);
#331=DIRECTION('',(0.E0,0.E0,1.E0));
#332=VECTOR('',#331,1.4E1);
#333=CARTESIAN_POINT('',(1.205E3,9.E0,6.4E1));
#334=LINE('',#333,#332);
#335=DIRECTION('',(0.E0,1.E0,0.E0));
#336=VECTOR('',#335,1.5E0);
#337=CARTESIAN_POINT('',(1.205E3,7.5E0,6.4E1));
#338=LINE('',#337,#336);
#339=DIRECTION('',(0.E0,0.E0,1.E0));
#340=VECTOR('',#339,1.25E1);
#341=CARTESIAN_POINT('',(1.205E3,7.5E0,6.4E1));
#342=LINE('',#341,#340);
#343=DIRECTION('',(0.E0,-1.E0,0.E0));
#344=VECTOR('',#343,1.3E1);
#345=CARTESIAN_POINT('',(1.205E3,7.5E0,7.65E1));
#346=LINE('',#345,#344);
#347=DIRECTION('',(0.E0,0.E0,-1.E0));
#348=VECTOR('',#347,1.25E1);
#349=CARTESIAN_POINT('',(1.205E3,-5.5E0,7.65E1));
#350=LINE('',#349,#348);
#351=DIRECTION('',(0.E0,1.E0,0.E0));
#352=VECTOR('',#351,1.5E0);
#353=CARTESIAN_POINT('',(1.205E3,-7.E0,6.4E1));
#354=LINE('',#353,#352);
#355=DIRECTION('',(1.E0,0.E0,0.E0));
#356=VECTOR('',#355,2.41E3);
#357=CARTESIAN_POINT('',(-1.205E3,-7.E0,7.8E1));
#358=LINE('',#357,#356);
#359=DIRECTION('',(1.E0,0.E0,0.E0));
#360=VECTOR('',#359,2.41E3);
#361=CARTESIAN_POINT('',(-1.205E3,-7.E0,6.4E1));
#362=LINE('',#361,#360);
#363=DIRECTION('',(1.E0,0.E0,0.E0));
#364=VECTOR('',#363,2.41E3);
#365=CARTESIAN_POINT('',(-1.205E3,-5.5E0,6.4E1));
#366=LINE('',#365,#364);
#367=DIRECTION('',(1.E0,0.E0,0.E0));
#368=VECTOR('',#367,2.41E3);
#369=CARTESIAN_POINT('',(-1.205E3,7.5E0,6.4E1));
#370=LINE('',#369,#368);
#371=DIRECTION('',(1.E0,0.E0,0.E0));
#372=VECTOR('',#371,2.41E3);
#373=CARTESIAN_POINT('',(-1.205E3,7.5E0,7.65E1));
#374=LINE('',#373,#372);
#375=DIRECTION('',(1.E0,0.E0,0.E0));
#376=VECTOR('',#375,2.41E3);
#377=CARTESIAN_POINT('',(-1.205E3,-5.5E0,7.65E1));
#378=LINE('',#377,#376);
#379=CARTESIAN_POINT('',(-1.205E3,9.E0,6.4E1));
#380=CARTESIAN_POINT('',(-1.205E3,9.E0,7.8E1));
#381=VERTEX_POINT('','',#379);
#382=VERTEX_POINT('','',#380);
#383=CARTESIAN_POINT('',(-1.205E3,-7.E0,7.8E1));
#384=VERTEX_POINT('','',#383);
#385=CARTESIAN_POINT('',(-1.205E3,-7.E0,6.4E1));
#386=VERTEX_POINT('','',#385);
#387=CARTESIAN_POINT('',(1.205E3,9.E0,6.4E1));
#388=CARTESIAN_POINT('',(1.205E3,9.E0,7.8E1));
#389=VERTEX_POINT('','',#387);
#390=VERTEX_POINT('','',#388);
#391=CARTESIAN_POINT('',(1.205E3,-7.E0,7.8E1));
#392=VERTEX_POINT('','',#391);
#393=CARTESIAN_POINT('',(1.205E3,-7.E0,6.4E1));
#394=VERTEX_POINT('','',#393);
#395=CARTESIAN_POINT('',(-1.205E3,7.5E0,6.4E1));
#396=CARTESIAN_POINT('',(-1.205E3,7.5E0,7.65E1));
#397=VERTEX_POINT('','',#395);
#398=VERTEX_POINT('','',#396);
#399=CARTESIAN_POINT('',(-1.205E3,-5.5E0,7.65E1));
#400=VERTEX_POINT('','',#399);
#401=CARTESIAN_POINT('',(-1.205E3,-5.5E0,6.4E1));
#402=VERTEX_POINT('','',#401);
#403=CARTESIAN_POINT('',(1.205E3,7.5E0,6.4E1));
#404=CARTESIAN_POINT('',(1.205E3,7.5E0,7.65E1));
#405=VERTEX_POINT('','',#403);
#406=VERTEX_POINT('','',#404);
#407=CARTESIAN_POINT('',(1.205E3,-5.5E0,7.65E1));
#408=VERTEX_POINT('','',#407);
#409=CARTESIAN_POINT('',(1.205E3,-5.5E0,6.4E1));
#410=VERTEX_POINT('','',#409);
#411=CARTESIAN_POINT('',(-1.205E3,9.E0,6.4E1));
#412=DIRECTION('',(0.E0,1.E0,0.E0));
#413=DIRECTION('',(0.E0,0.E0,1.E0));
#414=AXIS2_PLACEMENT_3D('',#411,#412,#413);
#415=PLANE('',#414);
#417=ORIENTED_EDGE('',*,*,#416,.F.);
#419=ORIENTED_EDGE('',*,*,#418,.T.);
#421=ORIENTED_EDGE('',*,*,#420,.T.);
#423=ORIENTED_EDGE('',*,*,#422,.F.);
#424=EDGE_LOOP('','',(#417,#419,#421,#423));
#425=FACE_OUTER_BOUND('',#424,.F.);
#426=ADVANCED_FACE('',(#425),'' ,#415,.T.);
#427=CARTESIAN_POINT('',(-1.205E3,0.E0,0.E0));
#428=DIRECTION('',(1.E0,0.E0,0.E0));
#429=DIRECTION('',(0.E0,0.E0,1.E0));
#430=AXIS2_PLACEMENT_3D('',#427,#428,#429);
#431=PLANE('',#430);
#432=ORIENTED_EDGE('',*,*,#416,.T.);
#434=ORIENTED_EDGE('',*,*,#433,.T.);
#436=ORIENTED_EDGE('',*,*,#435,.T.);
#438=ORIENTED_EDGE('',*,*,#437,.T.);
#440=ORIENTED_EDGE('',*,*,#439,.F.);
#442=ORIENTED_EDGE('',*,*,#441,.F.);
#444=ORIENTED_EDGE('',*,*,#443,.F.);
#446=ORIENTED_EDGE('',*,*,#445,.T.);
#447=EDGE_LOOP('','',(#432,#434,#436,#438,#440,#442,#444,#446));
#448=FACE_OUTER_BOUND('',#447,.F.);
#449=ADVANCED_FACE('',(#448),'' ,#431,.F.);
#450=CARTESIAN_POINT('',(-1.205E3,9.E0,7.8E1));
#451=DIRECTION('',(0.E0,0.E0,1.E0));
#452=DIRECTION('',(0.E0,-1.E0,0.E0));
#453=AXIS2_PLACEMENT_3D('',#450,#451,#452);
#454=PLANE('',#453);
#455=ORIENTED_EDGE('',*,*,#433,.F.);
#456=ORIENTED_EDGE('',*,*,#422,.T.);
#458=ORIENTED_EDGE('',*,*,#457,.T.);
#460=ORIENTED_EDGE('',*,*,#459,.F.);
#461=EDGE_LOOP('','',(#455,#456,#458,#460));
#462=FACE_OUTER_BOUND('',#461,.F.);
#463=ADVANCED_FACE('',(#462),'' ,#454,.T.);
#464=CARTESIAN_POINT('',(1.205E3,0.E0,0.E0));
#465=DIRECTION('',(1.E0,0.E0,0.E0));
#466=DIRECTION('',(0.E0,0.E0,1.E0));
#467=AXIS2_PLACEMENT_3D('',#464,#465,#466);
#468=PLANE('',#467);
#470=ORIENTED_EDGE('',*,*,#469,.F.);
#471=ORIENTED_EDGE('',*,*,#457,.F.);
#472=ORIENTED_EDGE('',*,*,#420,.F.);
#474=ORIENTED_EDGE('',*,*,#473,.F.);
#476=ORIENTED_EDGE('',*,*,#475,.T.);
#478=ORIENTED_EDGE('',*,*,#477,.T.);
#480=ORIENTED_EDGE('',*,*,#479,.T.);
#482=ORIENTED_EDGE('',*,*,#481,.F.);
#483=EDGE_LOOP('','',(#470,#471,#472,#474,#476,#478,#480,#482));
#484=FACE_OUTER_BOUND('',#483,.F.);
#485=ADVANCED_FACE('',(#484),'' ,#468,.T.);
#486=CARTESIAN_POINT('',(-1.205E3,-7.E0,7.8E1));
#487=DIRECTION('',(0.E0,-1.E0,0.E0));
#488=DIRECTION('',(0.E0,0.E0,-1.E0));
#489=AXIS2_PLACEMENT_3D('',#486,#487,#488);
#490=PLANE('',#489);
#491=ORIENTED_EDGE('',*,*,#435,.F.);
#492=ORIENTED_EDGE('',*,*,#459,.T.);
#493=ORIENTED_EDGE('',*,*,#469,.T.);
#495=ORIENTED_EDGE('',*,*,#494,.F.);
#496=EDGE_LOOP('','',(#491,#492,#493,#495));
#497=FACE_OUTER_BOUND('',#496,.F.);
#498=ADVANCED_FACE('',(#497),'' ,#490,.T.);
#499=CARTESIAN_POINT('',(-1.205E3,-7.E0,6.4E1));
#500=DIRECTION('',(0.E0,0.E0,-1.E0));
#501=DIRECTION('',(0.E0,1.E0,0.E0));
#502=AXIS2_PLACEMENT_3D('',#499,#500,#501);
#503=PLANE('',#502);
#505=ORIENTED_EDGE('',*,*,#504,.T.);
#506=ORIENTED_EDGE('',*,*,#473,.T.);
#507=ORIENTED_EDGE('',*,*,#418,.F.);
#508=ORIENTED_EDGE('',*,*,#445,.F.);
#509=EDGE_LOOP('','',(#505,#506,#507,#508));
#510=FACE_OUTER_BOUND('',#509,.F.);
#511=ADVANCED_FACE('',(#510),'' ,#503,.T.);
#512=CARTESIAN_POINT('',(-1.205E3,-7.E0,6.4E1));
#513=DIRECTION('',(0.E0,0.E0,-1.E0));
#514=DIRECTION('',(0.E0,1.E0,0.E0));
#515=AXIS2_PLACEMENT_3D('',#512,#513,#514);
#516=PLANE('',#515);
#517=ORIENTED_EDGE('',*,*,#494,.T.);
#518=ORIENTED_EDGE('',*,*,#481,.T.);
#520=ORIENTED_EDGE('',*,*,#519,.F.);
#521=ORIENTED_EDGE('',*,*,#437,.F.);
#522=EDGE_LOOP('','',(#517,#518,#520,#521));
#523=FACE_OUTER_BOUND('',#522,.F.);
#524=ADVANCED_FACE('',(#523),'' ,#516,.T.);
#525=CARTESIAN_POINT('',(-1.205E3,7.5E0,6.4E1));
#526=DIRECTION('',(0.E0,1.E0,0.E0));
#527=DIRECTION('',(0.E0,0.E0,1.E0));
#528=AXIS2_PLACEMENT_3D('',#525,#526,#527);
#529=PLANE('',#528);
#530=ORIENTED_EDGE('',*,*,#443,.T.);
#532=ORIENTED_EDGE('',*,*,#531,.T.);
#533=ORIENTED_EDGE('',*,*,#475,.F.);
#534=ORIENTED_EDGE('',*,*,#504,.F.);
#535=EDGE_LOOP('','',(#530,#532,#533,#534));
#536=FACE_OUTER_BOUND('',#535,.F.);
#537=ADVANCED_FACE('',(#536),'' ,#529,.F.);
#538=CARTESIAN_POINT('',(-1.205E3,9.E0,7.65E1));
#539=DIRECTION('',(0.E0,0.E0,1.E0));
#540=DIRECTION('',(0.E0,-1.E0,0.E0));
#541=AXIS2_PLACEMENT_3D('',#538,#539,#540);
#542=PLANE('',#541);
#543=ORIENTED_EDGE('',*,*,#441,.T.);
#545=ORIENTED_EDGE('',*,*,#544,.T.);
#546=ORIENTED_EDGE('',*,*,#477,.F.);
#547=ORIENTED_EDGE('',*,*,#531,.F.);
#548=EDGE_LOOP('','',(#543,#545,#546,#547));
#549=FACE_OUTER_BOUND('',#548,.F.);
#550=ADVANCED_FACE('',(#549),'' ,#542,.F.);
#551=CARTESIAN_POINT('',(-1.205E3,-5.5E0,7.8E1));
#552=DIRECTION('',(0.E0,-1.E0,0.E0));
#553=DIRECTION('',(0.E0,0.E0,-1.E0));
#554=AXIS2_PLACEMENT_3D('',#551,#552,#553);
#555=PLANE('',#554);
#556=ORIENTED_EDGE('',*,*,#439,.T.);
#557=ORIENTED_EDGE('',*,*,#519,.T.);
#558=ORIENTED_EDGE('',*,*,#479,.F.);
#559=ORIENTED_EDGE('',*,*,#544,.F.);
#560=EDGE_LOOP('','',(#556,#557,#558,#559));
#561=FACE_OUTER_BOUND('',#560,.F.);
#562=ADVANCED_FACE('',(#561),'' ,#555,.F.);
#563=CLOSED_SHELL('',(#426,#449,#463,#485,#498,#511,#524,#537,#550,#562));
#564=MANIFOLD_SOLID_BREP('',#563);
#565=(LENGTH_UNIT()NAMED_UNIT(*)SI_UNIT(.MILLI.,.METRE.));
#566=DIMENSIONAL_EXPONENTS(0.E0,0.E0,0.E0,0.E0,0.E0,0.E0,0.E0);
#567=(NAMED_UNIT(*)PLANE_ANGLE_UNIT()SI_UNIT($,.RADIAN.));
#568=PLANE_ANGLE_MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(1.745329251994E-2),#567);
#569=(CONVERSION_BASED_UNIT('DEGREE',#568)NAMED_UNIT(#566)PLANE_ANGLE_UNIT());
#570=(NAMED_UNIT(*)SI_UNIT($,.STERADIAN.)SOLID_ANGLE_UNIT());
#571=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.415000081568E-1),#565,'closure','Maximum model space distance between geometric entities at asserted connectivities');
#572=(GEOMETRIC_REPRESENTATION_CONTEXT(3)GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#571))GLOBAL_UNIT_ASSIGNED_CONTEXT((#565,#569,#570))REPRESENTATION_CONTEXT('ID1','3'));
#573=CARTESIAN_POINT('',(0.E0,0.E0,0.E0));
#574=DIRECTION('',(0.E0,0.E0,1.E0));
#575=DIRECTION('',(1.E0,0.E0,0.E0));
#576=AXIS2_PLACEMENT_3D('',#573,#574,#575);
#578=APPLICATION_CONTEXT('CONFIGURATION CONTROLLED 3D DESIGNS OF MECHANICAL PARTS AND ASSEMBLIES');
#579=APPLICATION_PROTOCOL_DEFINITION('international standard','config_control_design',1994,#578);
#580=DESIGN_CONTEXT('',#578,'design');
#581=MECHANICAL_CONTEXT('',#578,'mechanical');
#582=PRODUCT('ROD','ROD','NOT SPECIFIED',(#581));
#583=PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('6','LAST_VERSION',#582,
.MADE.);
#592=CARTESIAN_POINT('',(0.E0,0.E0,0.E0));
#593=DIRECTION('',(0.E0,0.E0,1.E0));
#594=DIRECTION('',(1.E0,0.E0,0.E0));
#595=AXIS2_PLACEMENT_3D('',#592,#593,#594);
#596=ITEM_DEFINED_TRANSFORMATION('','',#595,#576);
#597=(REPRESENTATION_RELATIONSHIP('','',#589,#577)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#596)SHAPE_REPRESENTATION_RELATIONSHIP());
#598=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#597,#591);
#599=DIRECTION('',(1.E0,0.E0,0.E0));
#600=VECTOR('',#599,3.4E2);
#601=CARTESIAN_POINT('',(-2.E2,-2.25E0,5.25E1));
#602=LINE('',#601,#600);
#603=DIRECTION('',(0.E0,0.E0,-1.E0));
#604=VECTOR('',#603,1.05E2);
#605=CARTESIAN_POINT('',(1.4E2,-2.25E0,5.25E1));
#606=LINE('',#605,#604);
#607=DIRECTION('',(-1.E0,0.E0,0.E0));
#608=VECTOR('',#607,3.4E2);
#609=CARTESIAN_POINT('',(1.4E2,-2.25E0,-5.25E1));
#610=LINE('',#609,#608);
#611=DIRECTION('',(0.E0,0.E0,1.E0));
#612=VECTOR('',#611,1.05E2);
#613=CARTESIAN_POINT('',(-2.E2,-2.25E0,-5.25E1));
#614=LINE('',#613,#612);
#615=DIRECTION('',(0.E0,1.E0,0.E0));
#616=VECTOR('',#615,4.5E0);
#617=CARTESIAN_POINT('',(-2.E2,-2.25E0,5.25E1));
#618=LINE('',#617,#616);
#619=DIRECTION('',(0.E0,1.E0,0.E0));
#620=VECTOR('',#619,4.5E0);
#621=CARTESIAN_POINT('',(-2.E2,-2.25E0,-5.25E1));
#622=LINE('',#621,#620);
#623=DIRECTION('',(0.E0,1.E0,0.E0));
#624=VECTOR('',#623,4.5E0);
#625=CARTESIAN_POINT('',(1.4E2,-2.25E0,-5.25E1));
#626=LINE('',#625,#624);
#627=DIRECTION('',(0.E0,1.E0,0.E0));
#628=VECTOR('',#627,4.5E0);
#629=CARTESIAN_POINT('',(1.4E2,-2.25E0,5.25E1));
#630=LINE('',#629,#628);
#631=DIRECTION('',(1.E0,0.E0,0.E0));
#632=VECTOR('',#631,3.4E2);
#633=CARTESIAN_POINT('',(-2.E2,2.25E0,5.25E1));
#634=LINE('',#633,#632);
#635=DIRECTION('',(0.E0,0.E0,1.E0));
#636=VECTOR('',#635,1.05E2);
#637=CARTESIAN_POINT('',(-2.E2,2.25E0,-5.25E1));
#638=LINE('',#637,#636);
#639=DIRECTION('',(-1.E0,0.E0,0.E0));
#640=VECTOR('',#639,3.4E2);
#641=CARTESIAN_POINT('',(1.4E2,2.25E0,-5.25E1));
#642=LINE('',#641,#640);
#643=DIRECTION('',(0.E0,0.E0,-1.E0));
#644=VECTOR('',#643,1.05E2);
#645=CARTESIAN_POINT('',(1.4E2,2.25E0,5.25E1));
#646=LINE('',#645,#644);
#647=CARTESIAN_POINT('',(-2.E2,-2.25E0,5.25E1));
#648=CARTESIAN_POINT('',(1.4E2,-2.25E0,5.25E1));
#649=VERTEX_POINT('','',#647);
#650=VERTEX_POINT('','',#648);
#651=CARTESIAN_POINT('',(1.4E2,-2.25E0,-5.25E1));
#652=VERTEX_POINT('','',#651);
#653=CARTESIAN_POINT('',(-2.E2,-2.25E0,-5.25E1));
#654=VERTEX_POINT('','',#653);
#655=CARTESIAN_POINT('',(-2.E2,2.25E0,5.25E1));
#656=CARTESIAN_POINT('',(1.4E2,2.25E0,5.25E1));
#657=VERTEX_POINT('','',#655);
#658=VERTEX_POINT('','',#656);
#659=CARTESIAN_POINT('',(1.4E2,2.25E0,-5.25E1));
#660=VERTEX_POINT('','',#659);
#661=CARTESIAN_POINT('',(-2.E2,2.25E0,-5.25E1));
#662=VERTEX_POINT('','',#661);
#663=CARTESIAN_POINT('',(0.E0,-2.25E0,0.E0));
#664=DIRECTION('',(0.E0,1.E0,0.E0));
#665=DIRECTION('',(0.E0,0.E0,-1.E0));
#666=AXIS2_PLACEMENT_3D('',#663,#664,#665);
#667=PLANE('',#666);
#669=ORIENTED_EDGE('',*,*,#668,.T.);
#671=ORIENTED_EDGE('',*,*,#670,.T.);
#673=ORIENTED_EDGE('',*,*,#672,.T.);
#675=ORIENTED_EDGE('',*,*,#674,.T.);
#676=EDGE_LOOP('','',(#669,#671,#673,#675));
#677=FACE_OUTER_BOUND('',#676,.F.);
#678=ADVANCED_FACE('',(#677),'' ,#667,.F.);
#679=CARTESIAN_POINT('',(-2.E2,-2.25E0,5.25E1));
#680=DIRECTION('',(0.E0,0.E0,1.E0));
#681=DIRECTION('',(1.E0,0.E0,0.E0));
#682=AXIS2_PLACEMENT_3D('',#679,#680,#681);
#683=PLANE('',#682);
#684=ORIENTED_EDGE('',*,*,#668,.F.);
#686=ORIENTED_EDGE('',*,*,#685,.T.);
#688=ORIENTED_EDGE('',*,*,#687,.T.);
#690=ORIENTED_EDGE('',*,*,#689,.F.);
#691=EDGE_LOOP('','',(#684,#686,#688,#690));
#692=FACE_OUTER_BOUND('',#691,.F.);
#693=ADVANCED_FACE('',(#692),'' ,#683,.T.);
#694=CARTESIAN_POINT('',(-2.E2,-2.25E0,-5.25E1));
#695=DIRECTION('',(-1.E0,0.E0,0.E0));
#696=DIRECTION('',(0.E0,0.E0,1.E0));
#697=AXIS2_PLACEMENT_3D('',#694,#695,#696);
#698=PLANE('',#697);
#699=ORIENTED_EDGE('',*,*,#674,.F.);
#701=ORIENTED_EDGE('',*,*,#700,.T.);
#703=ORIENTED_EDGE('',*,*,#702,.T.);
#704=ORIENTED_EDGE('',*,*,#685,.F.);
#705=EDGE_LOOP('','',(#699,#701,#703,#704));
#706=FACE_OUTER_BOUND('',#705,.F.);
#707=ADVANCED_FACE('',(#706),'' ,#698,.T.);
#708=CARTESIAN_POINT('',(1.4E2,-2.25E0,-5.25E1));
#709=DIRECTION('',(0.E0,0.E0,-1.E0));
#710=DIRECTION('',(-1.E0,0.E0,0.E0));
#711=AXIS2_PLACEMENT_3D('',#708,#709,#710);
#712=PLANE('',#711);
#713=ORIENTED_EDGE('',*,*,#672,.F.);
#715=ORIENTED_EDGE('',*,*,#714,.T.);
#717=ORIENTED_EDGE('',*,*,#716,.T.);
#718=ORIENTED_EDGE('',*,*,#700,.F.);
#719=EDGE_LOOP('','',(#713,#715,#717,#718));
#720=FACE_OUTER_BOUND('',#719,.F.);
#721=ADVANCED_FACE('',(#720),'' ,#712,.T.);
#722=CARTESIAN_POINT('',(1.4E2,-2.25E0,5.25E1));
#723=DIRECTION('',(1.E0,0.E0,0.E0));
#724=DIRECTION('',(0.E0,0.E0,-1.E0));
#725=AXIS2_PLACEMENT_3D('',#722,#723,#724);
#726=PLANE('',#725);
#727=ORIENTED_EDGE('',*,*,#670,.F.);
#728=ORIENTED_EDGE('',*,*,#689,.T.);
#730=ORIENTED_EDGE('',*,*,#729,.T.);
#731=ORIENTED_EDGE('',*,*,#714,.F.);
#732=EDGE_LOOP('','',(#727,#728,#730,#731));
#733=FACE_OUTER_BOUND('',#732,.F.);
#734=ADVANCED_FACE('',(#733),'' ,#726,.T.);
#735=CARTESIAN_POINT('',(0.E0,2.25E0,0.E0));
#736=DIRECTION('',(0.E0,1.E0,0.E0));
#737=DIRECTION('',(0.E0,0.E0,-1.E0));
#738=AXIS2_PLACEMENT_3D('',#735,#736,#737);
#739=PLANE('',#738);
#740=ORIENTED_EDGE('',*,*,#687,.F.);
#741=ORIENTED_EDGE('',*,*,#702,.F.);
#742=ORIENTED_EDGE('',*,*,#716,.F.);
#743=ORIENTED_EDGE('',*,*,#729,.F.);
#744=EDGE_LOOP('','',(#740,#741,#742,#743));
#745=FACE_OUTER_BOUND('',#744,.F.);
#746=ADVANCED_FACE('',(#745),'' ,#739,.T.);
#747=CLOSED_SHELL('',(#678,#693,#707,#721,#734,#746));
#748=MANIFOLD_SOLID_BREP('',#747);
#749=(LENGTH_UNIT()NAMED_UNIT(*)SI_UNIT(.MILLI.,.METRE.));
#750=DIMENSIONAL_EXPONENTS(0.E0,0.E0,0.E0,0.E0,0.E0,0.E0,0.E0);
#751=(NAMED_UNIT(*)PLANE_ANGLE_UNIT()SI_UNIT($,.RADIAN.));
#752=PLANE_ANGLE_MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(1.745329251994E-2),#751);
#753=(CONVERSION_BASED_UNIT('DEGREE',#752)NAMED_UNIT(#750)PLANE_ANGLE_UNIT());
#754=(NAMED_UNIT(*)SI_UNIT($,.STERADIAN.)SOLID_ANGLE_UNIT());
#755=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.415000081568E-1),#749,'closure','Maximum model space distance between geometric entities at asserted connectivities');
#756=(GEOMETRIC_REPRESENTATION_CONTEXT(3)GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#755))GLOBAL_UNIT_ASSIGNED_CONTEXT((#749,#753,#754))REPRESENTATION_CONTEXT('ID2','3'));
#757=CARTESIAN_POINT('',(0.E0,0.E0,0.E0));
#758=DIRECTION('',(0.E0,0.E0,1.E0));
#759=DIRECTION('',(1.E0,0.E0,0.E0));
#760=AXIS2_PLACEMENT_3D('',#757,#758,#759);
#762=APPLICATION_CONTEXT('CONFIGURATION CONTROLLED 3D DESIGNS OF MECHANICAL PARTS AND ASSEMBLIES');
#763=APPLICATION_PROTOCOL_DEFINITION('international standard','config_control_design',1994,#762);
#764=DESIGN_CONTEXT('',#762,'design');
#765=MECHANICAL_CONTEXT('',#762,'mechanical');
#766=PRODUCT('MODULE','MODULE','NOT SPECIFIED',(#765));
#767=PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('5','LAST_VERSION',#766,.MADE.);
#773=CARTESIAN_POINT('',(1.E3,0.E0,0.E0));
#774=DIRECTION('',(0.E0,0.E0,1.E0));
#775=DIRECTION('',(1.E0,0.E0,0.E0));
#776=AXIS2_PLACEMENT_3D('',#773,#774,#775);
#777=ITEM_DEFINED_TRANSFORMATION('','',#776,#760);
#778=(REPRESENTATION_RELATIONSHIP('','',#589,#761)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#777)SHAPE_REPRESENTATION_RELATIONSHIP());
#779=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#778,#772);
#782=CARTESIAN_POINT('',(6.E2,0.E0,0.E0));
#783=DIRECTION('',(0.E0,0.E0,1.E0));
#784=DIRECTION('',(1.E0,0.E0,0.E0));
#785=AXIS2_PLACEMENT_3D('',#782,#783,#784);
#786=ITEM_DEFINED_TRANSFORMATION('','',#785,#760);
#787=(REPRESENTATION_RELATIONSHIP('','',#589,#761)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#786)SHAPE_REPRESENTATION_RELATIONSHIP());
#788=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#787,#781);
#791=CARTESIAN_POINT('',(2.E2,0.E0,0.E0));
#792=DIRECTION('',(0.E0,0.E0,1.E0));
#793=DIRECTION('',(1.E0,0.E0,0.E0));
#794=AXIS2_PLACEMENT_3D('',#791,#792,#793);
#795=ITEM_DEFINED_TRANSFORMATION('','',#794,#760);
#796=(REPRESENTATION_RELATIONSHIP('','',#589,#761)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#795)SHAPE_REPRESENTATION_RELATIONSHIP());
#797=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#796,#790);
#800=CARTESIAN_POINT('',(-2.E2,0.E0,0.E0));
#801=DIRECTION('',(0.E0,0.E0,1.E0));
#802=DIRECTION('',(1.E0,0.E0,0.E0));
#803=AXIS2_PLACEMENT_3D('',#800,#801,#802);
#804=ITEM_DEFINED_TRANSFORMATION('','',#803,#760);
#805=(REPRESENTATION_RELATIONSHIP('','',#589,#761)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#804)SHAPE_REPRESENTATION_RELATIONSHIP());
#806=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#805,#799);
#809=CARTESIAN_POINT('',(-6.E2,0.E0,0.E0));
#810=DIRECTION('',(0.E0,0.E0,1.E0));
#811=DIRECTION('',(1.E0,0.E0,0.E0));
#812=AXIS2_PLACEMENT_3D('',#809,#810,#811);
#813=ITEM_DEFINED_TRANSFORMATION('','',#812,#760);
#814=(REPRESENTATION_RELATIONSHIP('','',#589,#761)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#813)SHAPE_REPRESENTATION_RELATIONSHIP());
#815=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#814,#808);
#818=CARTESIAN_POINT('',(-1.E3,0.E0,0.E0));
#819=DIRECTION('',(0.E0,0.E0,1.E0));
#820=DIRECTION('',(1.E0,0.E0,0.E0));
#821=AXIS2_PLACEMENT_3D('',#818,#819,#820);
#822=ITEM_DEFINED_TRANSFORMATION('','',#821,#760);
#823=(REPRESENTATION_RELATIONSHIP('','',#589,#761)REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#822)SHAPE_REPRESENTATION_RELATIONSHIP());
#824=CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#823,#817);
#825=(LENGTH_UNIT()NAMED_UNIT(*)SI_UNIT(.MILLI.,.METRE.));
#826=DIMENSIONAL_EXPONENTS(0.E0,0.E0,0.E0,0.E0,0.E0,0.E0,0.E0);
#827=(NAMED_UNIT(*)PLANE_ANGLE_UNIT()SI_UNIT($,.RADIAN.));
#828=PLANE_ANGLE_MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(1.745329251994E-2),#827);
#829=(CONVERSION_BASED_UNIT('DEGREE',#828)NAMED_UNIT(#826)PLANE_ANGLE_UNIT());
#830=(NAMED_UNIT(*)SI_UNIT($,.STERADIAN.)SOLID_ANGLE_UNIT());
#831=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.415000081568E-1),#825,'closure','Maximum model space distance between geometric entities at asserted connectivities');
#832=(GEOMETRIC_REPRESENTATION_CONTEXT(3)GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT(
(#831))GLOBAL_UNIT_ASSIGNED_CONTEXT((#825,#829,#830))REPRESENTATION_CONTEXT
('ID3','3'));
#833=APPLICATION_CONTEXT
('CONFIGURATION CONTROLLED 3D DESIGNS OF MECHANICAL PARTS AND ASSEMBLIES');
#834=APPLICATION_PROTOCOL_DEFINITION('international standard',
'config_control_design',1994,#833);
#835=DESIGN_CONTEXT('',#833,'design');
#836=MECHANICAL_CONTEXT('',#833,'mechanical');
#837=PRODUCT('ROD_PLACE_ASM','ROD_PLACE_ASM','NOT SPECIFIED',(#836));
#838=PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('1','LAST_VERSION',#837,.MADE.);
#840=PRODUCT_CATEGORY('part','');
#841=PRODUCT_RELATED_PRODUCT_CATEGORY('assembly','',(#837));
#842=PRODUCT_CATEGORY_RELATIONSHIP('','',#840,#841);
#843=PRODUCT_CATEGORY('part','');
#844=PRODUCT_RELATED_PRODUCT_CATEGORY('detail','',(#582,#766));
#845=PRODUCT_CATEGORY_RELATIONSHIP('','',#843,#844);
#846=SECURITY_CLASSIFICATION_LEVEL('unclassified');
#847=SECURITY_CLASSIFICATION('','',#846);
#848=CC_DESIGN_SECURITY_CLASSIFICATION(#847,(#583,#767,#838,#590,#771,#780,#789,#798,#807,#816));
#849=APPROVAL_STATUS('approved');
#850=APPROVAL(#849,'');
#851=CC_DESIGN_APPROVAL(#850,(#847,#583,#767,#838,#584,#768,#839));
#852=CALENDAR_DATE(98,27,2);
#853=COORDINATED_UNIVERSAL_TIME_OFFSET(1,0,.AHEAD.);
#854=LOCAL_TIME(10,19,1.5E1,#853);
#855=DATE_AND_TIME(#852,#854);
#856=APPROVAL_DATE_TIME(#855,#850);
#857=DATE_TIME_ROLE('creation_date');
#858=CC_DESIGN_DATE_AND_TIME_ASSIGNMENT(#855,#857,(#584,#768,#839));
#859=DATE_TIME_ROLE('classification_date');
#860=CC_DESIGN_DATE_AND_TIME_ASSIGNMENT(#855,#859,(#847));
#861=PERSON('UNSPECIFIED','UNSPECIFIED',$,$,$,$);
#862=ORGANIZATION('UNSPECIFIED','UNSPECIFIED','UNSPECIFIED');
#863=PERSON_AND_ORGANIZATION(#861,#862);
#864=APPROVAL_ROLE('approver');
#865=APPROVAL_PERSON_ORGANIZATION(#863,#850,#864);
#866=PERSON_AND_ORGANIZATION_ROLE('creator');
#867=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#863,#866,(#583,#767,#838,#584,#768,#839));
#868=PERSON_AND_ORGANIZATION_ROLE('design_supplier');
#869=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#863,#868,(#583,#767,#838));
#870=PERSON_AND_ORGANIZATION_ROLE('classification_officer');
#871=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#863,#870,(#847));
#872=PERSON_AND_ORGANIZATION_ROLE('design_owner');
#873=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#863,#872,(#837,#582,#766));
#134=EDGE_CURVE('', #99,#100,'',#12,.T.);
#136=EDGE_CURVE('', #99,#107,'',#4,.T.);
#138=EDGE_CURVE('', #107,#108,'',#68,.T.);
#140=EDGE_CURVE('', #100,#108,'',#96,.T.);
#150=EDGE_CURVE('', #104,#99,'',#8,.T.);
#153=EDGE_CURVE('', #100,#102,'',#16,.T.);
#155=EDGE_CURVE('', #102,#118,'',#20,.T.);
#157=EDGE_CURVE('', #116,#118,'',#24,.T.);
#159=EDGE_CURVE('', #115,#116,'',#28,.T.);
#161=EDGE_CURVE('', #120,#115,'',#32,.T.);
#163=EDGE_CURVE('', #120,#104,'',#36,.T.);
#174=EDGE_CURVE('', #104,#112,'',#40,.T.);
#176=EDGE_CURVE('', #112,#107,'',#72,.T.);
#187=EDGE_CURVE('', #120,#128,'',#52,.T.);
#189=EDGE_CURVE('', #128,#112,'',#76,.T.);
#201=EDGE_CURVE('', #102,#110,'',#44,.T.);
#203=EDGE_CURVE('', #110,#126,'',#92,.T.);
#205=EDGE_CURVE('', #118,#126,'',#48,.T.);
#217=EDGE_CURVE('', #115,#123,'',#56,.T.);
#219=EDGE_CURVE('', #128,#123,'',#80,.T.);
#231=EDGE_CURVE('', #116,#124,'',#60,.T.);
#233=EDGE_CURVE('', #123,#124,'',#84,.T.);
#246=EDGE_CURVE('', #124,#126,'',#88,.T.);
#257=EDGE_CURVE('', #108,#110,'',#64,.T.);
#416=EDGE_CURVE('', #381,#382,'',#290,.T.);
#418=EDGE_CURVE('', #381,#389,'',#286,.T.);
#420=EDGE_CURVE('', #389,#390,'',#334,.T.);
#422=EDGE_CURVE('', #382,#390,'',#322,.T.);
#433=EDGE_CURVE('', #382,#384,'',#294,.T.);
#435=EDGE_CURVE('', #384,#386,'',#298,.T.);
#437=EDGE_CURVE('', #386,#402,'',#302,.T.);
#439=EDGE_CURVE('', #400,#402,'',#306,.T.);
#441=EDGE_CURVE('', #398,#400,'',#310,.T.);
#443=EDGE_CURVE('', #397,#398,'',#314,.T.);
#445=EDGE_CURVE('', #397,#381,'',#318,.T.);
#457=EDGE_CURVE('', #390,#392,'',#330,.T.);
#459=EDGE_CURVE('', #384,#392,'',#358,.T.);
#469=EDGE_CURVE('', #392,#394,'',#326,.T.);
#473=EDGE_CURVE('', #405,#389,'',#338,.T.);
#475=EDGE_CURVE('', #405,#406,'',#342,.T.);
#477=EDGE_CURVE('', #406,#408,'',#346,.T.);
#479=EDGE_CURVE('', #408,#410,'',#350,.T.);
#481=EDGE_CURVE('', #394,#410,'',#354,.T.);
#494=EDGE_CURVE('', #386,#394,'',#362,.T.);
#504=EDGE_CURVE('', #397,#405,'',#370,.T.);
#519=EDGE_CURVE('', #402,#410,'',#366,.T.);
#531=EDGE_CURVE('', #398,#406,'',#374,.T.);
#544=EDGE_CURVE('', #400,#408,'',#378,.T.);
#577=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#576,#282,#564),#572);
#584=PRODUCT_DEFINITION('design','',#583,#580);
#585=PRODUCT_DEFINITION_SHAPE('','SHAPE FOR ROD.',#584);
#586=SHAPE_DEFINITION_REPRESENTATION(#585,#577);
#587=SHAPE_DEFINITION_REPRESENTATION(#588,#589);
#588=PRODUCT_DEFINITION_SHAPE('','SHAPE FOR ROD_PLACE_ASM.',#839);
#589=SHAPE_REPRESENTATION('',(#595,#776,#785,#794,#803,#812,#821),#832);
#590=NEXT_ASSEMBLY_USAGE_OCCURRENCE('0','Next assembly relationship','',#839,#584,$);
#591=PRODUCT_DEFINITION_SHAPE('Placement #0','Placement of ROD with respect to ROD_PLACE_ASM',#590);
#668=EDGE_CURVE('', #649,#650,'',#602,.T.);
#670=EDGE_CURVE('', #650,#652,'',#606,.T.);
#672=EDGE_CURVE('', #652,#654,'',#610,.T.);
#674=EDGE_CURVE('', #654,#649,'',#614,.T.);
#685=EDGE_CURVE('', #649,#657,'',#618,.T.);
#687=EDGE_CURVE('', #657,#658,'',#634,.T.);
#689=EDGE_CURVE('', #650,#658,'',#630,.T.);
#700=EDGE_CURVE('', #654,#662,'',#622,.T.);
#702=EDGE_CURVE('', #662,#657,'',#638,.T.);
#714=EDGE_CURVE('', #652,#660,'',#626,.T.);
#716=EDGE_CURVE('', #660,#662,'',#642,.T.);
#729=EDGE_CURVE('', #658,#660,'',#646,.T.);
#761=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#760,#748),#756);
#768=PRODUCT_DEFINITION('design','',#767,#764);
#769=PRODUCT_DEFINITION_SHAPE('','SHAPE FOR MODULE.',#768);
#770=SHAPE_DEFINITION_REPRESENTATION(#769,#761);
#771=NEXT_ASSEMBLY_USAGE_OCCURRENCE('1','Next assembly relationship','',#839,#768,$);
#772=PRODUCT_DEFINITION_SHAPE('Placement #1','Placement of MODULE with respect to ROD_PLACE_ASM',#771);
#780=NEXT_ASSEMBLY_USAGE_OCCURRENCE('2','Next assembly relationship','',#839,#768,$);
#781=PRODUCT_DEFINITION_SHAPE('Placement #2','Placement of MODULE with respect to ROD_PLACE_ASM',#780);
#789=NEXT_ASSEMBLY_USAGE_OCCURRENCE('3','Next assembly relationship','',#839,#768,$);
#790=PRODUCT_DEFINITION_SHAPE('Placement #3','Placement of MODULE with respect to ROD_PLACE_ASM',#789);
#798=NEXT_ASSEMBLY_USAGE_OCCURRENCE('4','Next assembly relationship','',#839,#768,$);
#799=PRODUCT_DEFINITION_SHAPE('Placement #4','Placement of MODULE with respect to ROD_PLACE_ASM',#798);
#807=NEXT_ASSEMBLY_USAGE_OCCURRENCE('5','Next assembly relationship','',#839,#768,$);
#808=PRODUCT_DEFINITION_SHAPE('Placement #5','Placement of MODULE with respect to ROD_PLACE_ASM',#807);
#816=NEXT_ASSEMBLY_USAGE_OCCURRENCE('6','Next assembly relationship','',#839,#768,$);
#817=PRODUCT_DEFINITION_SHAPE('Placement #6','Placement of MODULE with respect to ROD_PLACE_ASM',#816);
#839=PRODUCT_DEFINITION('design','',#838,#835);
ENDSEC;
END-ISO-10303-21;
File diff suppressed because it is too large Load Diff
+41
View File
@@ -0,0 +1,41 @@
#!/usr/bin/perl
$filename = $ARGV[0];
open(INFILE, $filename) || die "\nSTEP file ".$filename." not found.";
print "Opening file ".$filename;
@filebuf = <INFILE>;
close(INFILE);
$g4 = "G4";
$outputfile = $g4 . $filename;
open(OUTFILE, ">$outputfile");
print "\nModifying STEP file for NIST toolkit...";
foreach (@filebuf)
{
if(/.*VERTEX\_POINT.*/)
{
s/VERTEX\_POINT\(\'\'\,/VERTEX\_POINT\(\'\'\,\'\'\,/g ;
}
elsif(/.*EDGE\_LOOP.*/)
{
s/EDGE\_LOOP\(\'\'\,/EDGE\_LOOP\(\'\'\,\'\'\,/g;
}
elsif(/.*ADVANCED\_FACE.*/)
{
($a,$b,$c) = split('\)',$&);
s//$a\)\,\'\' $b\)$c\n/;
}
elsif(/.*EDGE\_CURVE.*/)
{
($a,$b,$c,$d,$e) = split(",",$&);
s//$a\, $b\,$c\,\'\'\,$d\,$e\n/;
}
print OUTFILE;
}
close(OUTFILE);
print "\nOutput written to ".$outputfile."\n";