|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectfr.cnes.sirius.patrius.assembly.models.SensorModel
public final class SensorModel
SensorProperty
This class is a model for a generic sensor of the assembly : it uses a SensorProperty object. It provides computations using the tree of frames and some measures are available.
Constructor Summary | |
---|---|
SensorModel(Assembly assembly,
String partName)
Constructor for a sensor model. |
Method Summary | |
---|---|
void |
addMaskingCelestialBody(GeometricBodyShape body)
Adds a celestial body shape to consider in maskings. |
void |
addOwnMaskingParts(String[] partsNames)
Enables the masking by the considered spacecraft's own parts, by giving the names of the parts that can cause maskings. |
void |
addSecondaryMaskingSpacecraft(SecondarySpacecraft spacecraft,
String[] partsNames)
Enables the masking by a secondary spacecraft's parts, by giving the names of the parts that can cause maskings. |
double |
celestialBodiesMaskingDistance(AbsoluteDate date)
Computes the minimal euclidian distance to the celestial body shapes. |
Assembly |
getAssembly()
|
int |
getInhibitionFieldsNumber()
|
double |
getInhibitionTargetAngularRadius(AbsoluteDate date,
int inhibitionFieldNumber)
Computes the angular radius from the sensor of the main target at a date. |
double |
getInhibitTargetCenterToFieldAngle(AbsoluteDate date,
int inhibitionFieldNumber)
Computes the angular distance of the CENTER of an inhibition target to the border of the associated inhibition field at a date. |
double |
getMainTargetAngularRadius(AbsoluteDate date)
Computes the angular radius from the sensor of the main target at a date. |
String |
getMaskingBodyName()
|
String |
getMaskingSpacecraftName()
|
String |
getMaskingSpacecraftPartName()
|
Vector3D |
getNormalisedTargetVectorInSensorFrame(AbsoluteDate date)
Computes the target vector at a date in the sensor's frame. |
PVCoordinates |
getPVCoordinates(AbsoluteDate date,
Frame frame)
Get the PVCoordinates of the sensor part in the selected frame. |
Vector3D[] |
getRefrenceAxis(Frame frame,
AbsoluteDate date)
Computes the reference axis of the sensor in a given frame at a date |
Vector3D |
getSightAxis(Frame frame,
AbsoluteDate date)
Computes the sight axis of the sensor in a given frame at a date |
double |
getTargetCenterFOVAngle(AbsoluteDate date)
Computes the angular distance of the CENTER of the main target to the border of the main field of view at a date. |
double[] |
getTargetDihedralAngles(AbsoluteDate date)
Computes the dihedral angles of the target at a date in the sensor's frame. |
double |
getTargetRefAxisAngle(AbsoluteDate date,
int axisNumber)
|
double |
getTargetRefAxisElevation(AbsoluteDate date,
int axisNumber)
|
double |
getTargetSightAxisAngle(AbsoluteDate date)
|
double |
getTargetSightAxisElevation(AbsoluteDate date)
|
Vector3D |
getTargetVectorInSensorFrame(AbsoluteDate date)
Computes the target vector at a date in the sensor's frame. |
boolean |
isMainTargetInField(AbsoluteDate date)
Checks if the main target at least partially is in the field of view at a date |
boolean |
noInhibition(AbsoluteDate date)
Checks if at least an inhibition target is at least partially in its associated inhibition field at a date |
void |
resetProperty()
Resets the sensor property features. |
void |
setMainTarget(PVCoordinatesProvider target,
LocalRadiusProvider radius)
Sets the main target of the sensor property. |
double |
spacecraftsMaskingDistance(AbsoluteDate date)
Computes the minimal euclidian distance to the spacecraft's shapes (GEOMERTY properties). |
boolean |
visibilityOk(AbsoluteDate date)
Checks if the main target is in the field of view and no inhibition target in its inhibition field at a given date. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SensorModel(Assembly assembly, String partName)
assembly
- the considered vehiclepartName
- the name of the part supporting the sensorMethod Detail |
---|
public void resetProperty()
public boolean isMainTargetInField(AbsoluteDate date) throws OrekitException
date
- the date of the computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public boolean noInhibition(AbsoluteDate date) throws OrekitException
date
- the date of the computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public boolean visibilityOk(AbsoluteDate date) throws OrekitException
date
- the date of the computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getTargetCenterFOVAngle(AbsoluteDate date) throws OrekitException
date
- the date of the computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getInhibitTargetCenterToFieldAngle(AbsoluteDate date, int inhibitionFieldNumber) throws OrekitException
date
- the date of the computationinhibitionFieldNumber
- number of the inhibition field to consider (first is 1)
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public Vector3D getSightAxis(Frame frame, AbsoluteDate date) throws OrekitException
frame
- the frame of expressiondate
- the date of the computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public Vector3D[] getRefrenceAxis(Frame frame, AbsoluteDate date) throws OrekitException
frame
- the frame of expressiondate
- the date of the computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public Vector3D getTargetVectorInSensorFrame(AbsoluteDate date) throws OrekitException
date
- the computation date
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public Vector3D getNormalisedTargetVectorInSensorFrame(AbsoluteDate date) throws OrekitException
date
- the computation date
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double[] getTargetDihedralAngles(AbsoluteDate date) throws OrekitException
date
- the computation date
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getTargetSightAxisAngle(AbsoluteDate date) throws OrekitException
date
- the date of computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getTargetRefAxisAngle(AbsoluteDate date, int axisNumber) throws OrekitException
date
- the date of computationaxisNumber
- the number of the reference axis for this computation (first is 1)
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getTargetSightAxisElevation(AbsoluteDate date) throws OrekitException
date
- the date of computation
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getTargetRefAxisElevation(AbsoluteDate date, int axisNumber) throws OrekitException
date
- the date of computationaxisNumber
- the number of the reference axis for this computation (first is 1)
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public Assembly getAssembly()
public int getInhibitionFieldsNumber()
public void setMainTarget(PVCoordinatesProvider target, LocalRadiusProvider radius)
target
- the new main target centerradius
- the target's radiuspublic double getMainTargetAngularRadius(AbsoluteDate date) throws OrekitException
date
- the computation date
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public double getInhibitionTargetAngularRadius(AbsoluteDate date, int inhibitionFieldNumber) throws OrekitException
date
- the computation dateinhibitionFieldNumber
- number of the inhibition field to consider (first is 1)
OrekitException
- if some frame transformation problem occurs
(if the assembly is not linked to the tree of frame in witch the target is defined)public PVCoordinates getPVCoordinates(AbsoluteDate date, Frame frame) throws OrekitException
PVCoordinates
of the sensor part in the selected frame.
getPVCoordinates
in interface PVCoordinatesProvider
date
- current dateframe
- the frame where to define the position
OrekitException
- if position cannot be computed in given frame : occurs
if the assembly is not correctly linked to the main tree of frames.public double spacecraftsMaskingDistance(AbsoluteDate date) throws OrekitException
date
- the current computation date
OrekitException
- if a problem occurs in frames transformationspublic double celestialBodiesMaskingDistance(AbsoluteDate date) throws OrekitException
date
- the current computation date
OrekitException
- if a problem occurs in frames transformationspublic String getMaskingSpacecraftName()
public String getMaskingSpacecraftPartName()
public String getMaskingBodyName()
public void addOwnMaskingParts(String[] partsNames)
partsNames
- the names of the considered partspublic void addSecondaryMaskingSpacecraft(SecondarySpacecraft spacecraft, String[] partsNames)
spacecraft
- the secondary masking spacecraftpartsNames
- partsNames the names of the considered partspublic void addMaskingCelestialBody(GeometricBodyShape body)
body
- the celestial body shape to consider
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |