public class PillarTimeWindowGeoNode extends TimeWindowGeoNode implements IPillarTimeWindowGeoNode
TimeWindowGeoNode
which, if not reached in time, will be skipped entirely by
unassigning it. PillarTimeWindowGeoNode(String, double, double, IOpeningHours, Duration)
is the normal constructor. PillarTimeWindowGeoNode(String, double, double, IOpeningHours,
Duration, boolean)
includes the option that the work at the PillarTimeWindowGeoNode
has
to be done within the OpeningHours
.IOptimizationElement.OptimizationElementFlavour
dutyHours
Constructor and Description |
---|
PillarTimeWindowGeoNode(String nodeId,
double latitude,
double longitude,
IOpeningHours openingHour)
The constructor for the
PillarTimeWindowGeoNode , which is a TimeWindowGeoNode
that if not reached in time, will be skipped entirely. |
PillarTimeWindowGeoNode(String nodeId,
double latitude,
double longitude,
IOpeningHours openingHour,
Duration visitDuration)
The constructor for the
PillarTimeWindowGeoNode , which is a TimeWindowGeoNode
that if not reached in time, will be skipped entirely. |
PillarTimeWindowGeoNode(String nodeId,
double latitude,
double longitude,
IOpeningHours openingHour,
Duration visitDuration,
boolean isDutyHoursIncludeVisitDuration)
The constructor for the
PillarTimeWindowGeoNode , which is a TimeWindowGeoNode
that if not reached in time, will be skipped entirely. |
PillarTimeWindowGeoNode(String nodeId,
com.dna.jopt.config.types.Position pos,
IOpeningHours openingHour) |
PillarTimeWindowGeoNode(String nodeId,
com.dna.jopt.config.types.Position pos,
IOpeningHours openingHour,
Duration visitDuration) |
PillarTimeWindowGeoNode(String nodeId,
com.dna.jopt.config.types.Position pos,
IOpeningHours openingHour,
Duration visitDuration,
boolean isDutyHoursIncludeVisitDuration) |
Modifier and Type | Method and Description |
---|---|
void |
addConstraint(IConstraint constraint)
Adds a
constraint which limits the Resources that can serve
this Node to those that have the specific Qualification to do
so. |
void |
attachResource(IResource mandatoryVisitor)
Attaching the
mandatoryVisitor as the visiting resource will be treated as a hard constraint
if a mandatoryVisitor was set using this method. |
void |
detachResourceConstraints()
Removes all
IConstraint . |
void |
detachResourceConstraints(String resId)
|
boolean |
equals(Object obj) |
String |
getAttachedResourceId()
|
Optional<Long> |
getConnectionRelatedLateMargin(long connectionMillis)
Gets the connection related late margin.
|
double |
getConnectionRelatedMarginFactor()
Gets the connection related margin factor.
|
Duration |
getConnectionRelatedMaxLateMargin()
Gets the connection related max late margin.
|
IOptimizationElement.OptimizationElementFlavour |
getFlavour()
Gets the flavour which spells out the kind of
Node of the element. |
boolean |
getLastKnownAsRouteStart()
Gets the last known as route start.
|
boolean |
getLastKnownAsRouteTermination() |
int |
hashCode() |
boolean |
isApplyPartialConnectionRelatedLateMargin()
Checks if is apply partial connection related late margin.
|
boolean |
isAutoFilterProtected()
Checks if the
Node is protected from being filtered. |
boolean |
isAutoTransformable2StartAnchor()
Checks if this
Pillar will automatically transform into an anchorNode if it is the first Pillar and
cannot be reached in time.. |
boolean |
isDoElementShiftConnectionRelatedLateMargin()
Checks if is do element shift connection related late margin.
|
boolean |
isForcedStayNode()
Checks
isForcedStayNode . |
boolean |
isOnlyScheduledInCompany()
Some
Pillars that are scheduled are not actually jobs. |
boolean |
isOverwritingRouteStart()
|
boolean |
isOverwritingRouteStartOrTermination()
Checks if the
Pillar is an AnchorPillar in which case the Route has to start or
and at said AnchorPillar . |
boolean |
isOverwritingRouteTermination()
Checks if the
ILogicEntityRoute has
to end at this AnchorNode . |
boolean |
isPillarNode()
Checks if the node is a
isPillarNode . |
boolean |
isResourceAttached()
Checks the state of
attachedres . |
boolean |
isSchedulableAfterWorkingHours()
|
boolean |
isSchedulableBeforeWorkingHours()
|
boolean |
isTimeAdjustableAnchor()
Checks
isTimeAdjustableAnchor . |
void |
resetConnectionRelatedMargin() |
void |
setAutoTransformable2StartAnchor(boolean isAutoTransformable2StartAnchor)
When this
Pillar is the first pillar and cannot be reached in time, it will
automatically transform into an anchorNode if set to true . |
boolean |
setConnectionRelatedLateMargin(double connectionFator,
Duration maxMargin,
boolean shiftNode,
boolean applyPartial)
Sets the connection related late margin.
|
void |
setIsForcedStayNode(boolean isForcedStayNode)
Sets
isForcedStayNode and AbstractNode.isStayNode to the input value. |
void |
setIsOnlyScheduledInCompany(boolean isOnlyScheduledInCompany)
Sets the
Pillar only to be visited of other work Nodes are scheduled that day. |
void |
setIsOverwritingRouteStart(boolean isOverwritingRouteStart,
boolean isAdjustable)
|
void |
setIsOverwritingRouteTermination(boolean isOverwritingRouteTermination,
boolean isAdjustable)
Sets the
Pillar to bean AnchorPillar at which the Route has to start or end. |
void |
setIsSchedulableOutsideWorkingHours(boolean isSchedulableOutsideWorkingsHoursStart,
boolean isSchedulableOutsideWorkingsHoursEnd)
Sets the
Pillar that it has to be visited by a Resource outside of her WorkingHours
if IResource.setMaxPillarAfterHoursTime(Duration) is also set to true . |
hasRealGeoLocation
addNode2NodeRelation, addQualification, addSubsequentSlaveNode, addSubsequentSlaveNodes, addViolation, decrementCurrentAutoFilterProtectedExecutions, detachNodeRelations, getAutoFilterViolationCollector, getBaseJointVisitDuration, getBaseJointVisitDurationMillis, getBaseVisitDuration, getBaseVisitDurationMillis, getConstraints, getCurrentLeftAutoFilterProtectedExecutions, getDutyHours, getFirstNodeInRouteImportance, getFixCost, getImportance, getIndividualOfferedNodeMultiplier, getJointVisitDuration, getJointVisitDurationMillis, getLastKnownAttachedAndRemovedResIds, getLastNodeInRouteImportance, getLoad, getLockdownTime, getMinVisitDuration, getMinVisitDurationMillis, getNode2NodeRelations, getNodeColor, getNodeDepot, getNodeId, getOriginalDutyHours, getQualifications, getStayAtStartDuration, getSubsequentSlaveNodes, getTempImplausibleScore, getTotalLoadDimension, getUnloadAllDimension, getViolations, getVisitDurationMillis, hasFullJobLevelRelations, hasRelations, hasRouteDependentVisitDuration, invokeDetachedResourceConstraints, isAllowMoveToReduceFlexTime, isCausingIdleTimeCost, isDutyHoursIncludesVisitDuration, isOfferedNode, isOptimizable, isOptional, isReturnStart, isStayNode, isUnassigned, isUnloadAll, isUseJointVisitDuration, isWaitOnEarlyArrival, isWaitOnEarlyArrivalFirstNode, isWorkNode, removeConstraint, removeNode2NodeRelations, resetDutyHoursTempActivation, resetLockdownTime, resetSubsequentSlaveNodes, setAllowMoveToReduceFlexTime, setAutoFilterConstraints, setConstraints, setFirstNodeInRouteImportance, setFixCost, setHasRouteDependentVisitDuration, setImportance, setIndividualOfferedNodeMultiplier, setIsCausingIdleTimeCost, setIsDutyHoursIncludesVisitDuration, setIsOfferedNode, setIsOptional, setIsReturnStart, setIsStayNode, setIsWorkNode, setJointVisitDuration, setLastNodeInRouteImportance, setLoad, setLockdownTime, setMinAutoFilterProtectedExecutions, setMinimalVisitDuration, setNodeColor, setNodeDepot, setNodeId, setOptimizable, setOptimizable, setUnassigned, setUnloadAll, setUnloadAllDimension, setVisitDuration, setVisitDurationMillis, setWaitOnEarlyArrival, setWaitOnEarlyArrivalFirstNode, tempIncreaseImplausibleScore, tempSetActiveDutyHours, toString
forceSetId, getDistMatrixId, getExtraInfo, getId, getLatitude, getLocationId, getLongitude, getNodeConnection, getNodeConnectionKeySet, getNodeConnections, getPosition, getPreferredHoursInteractionController, putNodeConnection, putNodeConnectionFromElement, removeNodeConnection, setDistMatrixId, setDutyHours, setExtraInfo, setId, setLatitude, setLocationId, setLongitude, setPosition
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
addNode2NodeRelation, addQualification, addSubsequentSlaveNode, addSubsequentSlaveNodes, addViolation, decrementCurrentAutoFilterProtectedExecutions, detachNodeRelations, getAutoFilterViolationCollector, getBaseJointVisitDuration, getBaseJointVisitDurationMillis, getBaseVisitDuration, getBaseVisitDurationMillis, getConstraints, getCurrentLeftAutoFilterProtectedExecutions, getFirstNodeInRouteImportance, getFixCost, getImportance, getIndividualOfferedNodeMultiplier, getJointVisitDuration, getJointVisitDurationMillis, getLastKnownAttachedAndRemovedResIds, getLastNodeInRouteImportance, getLoad, getLockdownTime, getMinVisitDurationMillis, getNode2NodeRelations, getNodeColor, getNodeDepot, getOriginalDutyHours, getQualifications, getStayAtStartDuration, getSubsequentSlaveNodes, getTempImplausibleScore, getTotalLoadDimension, getUnloadAllDimension, getViolations, getVisitDurationMillis, hasFullJobLevelRelations, hasRelations, hasRouteDependentVisitDuration, isAllowMoveToReduceFlexTime, isCausingIdleTimeCost, isDutyHoursIncludesVisitDuration, isOfferedNode, isOptimizable, isOptional, isReturnStart, isStayNode, isUnassigned, isUnloadAll, isUseJointVisitDuration, isWaitOnEarlyArrival, isWaitOnEarlyArrivalFirstNode, isWorkNode, removeConstraint, removeNode2NodeRelations, resetDutyHoursTempActivation, resetLockdownTime, resetSubsequentSlaveNodes, setAllowMoveToReduceFlexTime, setAutoFilterConstraints, setConstraints, setFirstNodeInRouteImportance, setFixCost, setHasRouteDependentVisitDuration, setImportance, setIndividualOfferedNodeMultiplier, setIsCausingIdleTimeCost, setIsDutyHoursIncludesVisitDuration, setIsOfferedNode, setIsOptional, setIsReturnStart, setIsStayNode, setIsWorkNode, setJointVisitDuration, setLastNodeInRouteImportance, setLoad, setLockdownTime, setMinAutoFilterProtectedExecutions, setMinimalVisitDuration, setNodeColor, setNodeDepot, setOptimizable, setOptimizable, setUnassigned, setUnloadAll, setUnloadAllDimension, setVisitDuration, setVisitDurationMillis, setWaitOnEarlyArrival, setWaitOnEarlyArrivalFirstNode, tempIncreaseImplausibleScore, tempSetActiveDutyHours
forceSetId, getDistMatrixId, getDutyHours, getExtraInfo, getId, getLatitude, getLocationId, getLongitude, getNodeConnection, getNodeConnectionKeySet, getNodeConnections, getPosition, getPreferredHoursInteractionController, hasRealGeoLocation, putNodeConnection, putNodeConnectionFromElement, removeNodeConnection, setDistMatrixId, setDutyHours, setExtraInfo, setId, setLatitude, setLocationId, setLongitude, setPosition
public PillarTimeWindowGeoNode(String nodeId, double latitude, double longitude, IOpeningHours openingHour)
PillarTimeWindowGeoNode
, which is a TimeWindowGeoNode
that if not reached in time, will be skipped entirely. If a visit duration
is supposed
to be set, please use PillarTimeWindowGeoNode(String, double, double, IOpeningHours,
Duration)
.
Implementation example:
// Defining opening hours
OpeningHours openingHours =
new OpeningHours(ZonedDateTime.of(2020, MAY.getValue(), 6, 14, 0, 0, 0, ZoneId.of("Europe/Berlin")),
ZonedDateTime.of(2020, MAY.getValue(), 6, 21, 0, 0, 0, ZoneId.of("Europe/Berlin")));
// Defining an (optional) constraint IConstraint typeConstraint = new TypeConstraint();
((TypeConstraint) typeConstraint).addType("plumbing"); typeConstraint.setIsHard(true);
PillarTimeWindowGeoNode aachen =
new PillarTimeWindowGeoNode("Aachen", 50.775346, 6.083887, openingHours);
aachen.addConstraint(typeConstraint);
this.addElement(aachen);
nodeId
- the string node IDlatitude
- the double latitude of the PillarTimeWindowGeoNodelongitude
- the double longitude of the PillarTimeWindowGeoNodeopeningHour
- the IOpeninghourspublic PillarTimeWindowGeoNode(String nodeId, com.dna.jopt.config.types.Position pos, IOpeningHours openingHour)
public PillarTimeWindowGeoNode(String nodeId, double latitude, double longitude, IOpeningHours openingHour, Duration visitDuration)
PillarTimeWindowGeoNode
, which is a TimeWindowGeoNode
that if not reached in time, will be skipped entirely. If the work at the PillarTimeWindowGeoNode
has to be finished within the IDutyHours
, please use PillarTimeWindowGeoNode(String,
double, double, IOpeningHours, Duration, boolean)
.
Implementation example
// Defining opening hours
OpeningHours openingHours =
new OpeningHours(ZonedDateTime.of(2020, MAY.getValue(), 6, 14, 0, 0, 0, ZoneId.of("Europe/Berlin")),
ZonedDateTime.of(2020, MAY.getValue(), 6, 21, 0, 0, 0, ZoneId.of("Europe/Berlin")));
// Defining an (optional) constraint IConstraint typeConstraint = new TypeConstraint();
((TypeConstraint) typeConstraint).addType("plumbing"); typeConstraint.setIsHard(true);
Duration visitDuration = Duration.ofMinutes(20);
PillarTimeWindowGeoNode aachen =
new PillarTimeWindowGeoNode("Aachen", 50.775346, 6.083887, openingHours, visitDuration);
aachen.addConstraint(typeConstraint);
this.addElement(aachen);
nodeId
- the string node IDlatitude
- the double latitude of the PillarTimeWindowGeoNodelongitude
- the double longitude of the PillarTimeWindowGeoNodeopeningHour
- the IOpeninghoursvisitDuration
- the duration visitduration that the work needs in order to be donepublic PillarTimeWindowGeoNode(String nodeId, com.dna.jopt.config.types.Position pos, IOpeningHours openingHour, Duration visitDuration)
public PillarTimeWindowGeoNode(String nodeId, double latitude, double longitude, IOpeningHours openingHour, Duration visitDuration, boolean isDutyHoursIncludeVisitDuration)
PillarTimeWindowGeoNode
, which is a TimeWindowGeoNode
that if not reached in time, will be skipped entirely. In the other constructors the work has
to be started but not necessarily finished within the IDutyHours
. If isDutyHoursIncludeVisitDuration
is set
to true
, the work has to be started and finished within the DutyHours
.
Implementation example
// Defining opening hours
OpeningHours openingHours =
new OpeningHours(ZonedDateTime.of(2020, MAY.getValue(), 6, 14, 0, 0, 0, ZoneId.of("Europe/Berlin")),
ZonedDateTime.of(2020, MAY.getValue(), 6, 21, 0, 0, 0, ZoneId.of("Europe/Berlin")));
// Defining an (optional) constraint IConstraint typeConstraint = new TypeConstraint();
((TypeConstraint) typeConstraint).addType("plumbing"); typeConstraint.setIsHard(true);
Duration visitDuration = Duration.ofMinutes(20);
PillarTimeWindowGeoNode aachen =
new PillarTimeWindowGeoNode("Aachen", 50.775346, 6.083887, openingHours, visitDuration, true);
aachen.addConstraint(typeConstraint);
this.addElement(aachen);
nodeId
- the string node IDlatitude
- the double latitude of the PillarTimeWindowGeoNodelongitude
- the double longitude of the PillarTimeWindowGeoNodeopeningHour
- the iOpeningHoursvisitDuration
- the duration visitDuration that the work needsisDutyHoursIncludeVisitDuration
- the boolean whether the visitDuration if the work has to
be done within the DutyHourspublic PillarTimeWindowGeoNode(String nodeId, com.dna.jopt.config.types.Position pos, IOpeningHours openingHour, Duration visitDuration, boolean isDutyHoursIncludeVisitDuration)
public boolean isTimeAdjustableAnchor()
IPillarNode
isTimeAdjustableAnchor
. If yes, then the Pillar
is allowed
to change time a bit if the Route
start is moving as well. The default value is false
.isTimeAdjustableAnchor
in interface IPillarNode
public boolean isOverwritingRouteStart()
IPillarTimeWindowGeoNode
isOverwritingRouteStart
in interface IPillarTimeWindowGeoNode
public boolean isOverwritingRouteTermination()
IPillarTimeWindowGeoNode
ILogicEntityRoute
has
to end at this AnchorNode
.
If a job has to be done at this AnchorPillar
, then another Pillar
has to be
added again.
isOverwritingRouteTermination
in interface IPillarTimeWindowGeoNode
isOverwritingRouteTermination
in interface IPillarNode
public void attachResource(IResource mandatoryVisitor)
IPillarNode
mandatoryVisitor
as the visiting resource
will be treated as a hard constraint
if a mandatoryVisitor
was set using this method.
Throws an IllegalStateException
if a mandatoryVisitor
has already been attached
attachResource
in interface IPillarNode
mandatoryVisitor
- the Resource to attach to the Pillarnodepublic void detachResourceConstraints()
INode
IConstraint
. This method is used internally.detachResourceConstraints
in interface INode
detachResourceConstraints
in class AbstractNode
public boolean getLastKnownAsRouteStart()
IPillarTimeWindowGeoNode
getLastKnownAsRouteStart
in interface IPillarTimeWindowGeoNode
public boolean getLastKnownAsRouteTermination()
getLastKnownAsRouteTermination
in interface IPillarNode
public void detachResourceConstraints(String resId)
INode
IResource
with the given resId
from the
IConstraint
that are IConstraintResource
. This method is used
internally.detachResourceConstraints
in interface INode
detachResourceConstraints
in class AbstractNode
resId
- the string Resource /Dpublic void addConstraint(IConstraint constraint)
INode
constraint
which limits the Resources
that can serve
this Node
to those that have the specific Qualification
to do
so.
For further explanations and implementation examples please see
TypeConstraint
and
TypeQualification
.
addConstraint
in interface INode
addConstraint
in class AbstractNode
constraint
- the Iconstraint
to be addedpublic String getAttachedResourceId()
IPillarNode
getAttachedResourceId
in interface IPillarNode
public IOptimizationElement.OptimizationElementFlavour getFlavour()
IOptimizationElement
Node
of the element.getFlavour
in interface IOptimizationElement
getFlavour
in class TimeWindowGeoNode
public boolean isPillarNode()
INode
isPillarNode
. PillarNodes
will
only be served if the Resource
arrives on time. If the
Resource
is arriving too late the PillarNode
will be skipped.isPillarNode
in interface INode
isPillarNode
in class TimeWindowGeoNode
isPillarNode
public boolean isResourceAttached()
IPillarNode
attachedres
.isResourceAttached
in interface IPillarNode
public boolean equals(Object obj)
equals
in class AbstractNode
public int hashCode()
hashCode
in class AbstractNode
public void setIsForcedStayNode(boolean isForcedStayNode)
IPillarTimeWindowGeoNode
isForcedStayNode
and AbstractNode.isStayNode
to the input value.setIsForcedStayNode
in interface IPillarTimeWindowGeoNode
isForcedStayNode
- the boolean to be setpublic boolean isForcedStayNode()
IPillarTimeWindowGeoNode
isForcedStayNode
.isForcedStayNode
in interface IPillarTimeWindowGeoNode
public boolean isOnlyScheduledInCompany()
IPillarNode
Pillars
that are scheduled are not actually jobs. Setting this to true
these Pillars
only
need to be visited if they occur on a day that work Nodes
are scheduled.
The default value is false
.isOnlyScheduledInCompany
in interface IPillarNode
Node
is only scheduled in companypublic void setIsOnlyScheduledInCompany(boolean isOnlyScheduledInCompany)
IPillarNode
Pillar
only to be visited of other work Nodes
are scheduled that day.
The default value is false
.setIsOnlyScheduledInCompany
in interface IPillarNode
isOnlyScheduledInCompany
- the boolean whether the Node
is only scheduled in companypublic void setIsSchedulableOutsideWorkingHours(boolean isSchedulableOutsideWorkingsHoursStart, boolean isSchedulableOutsideWorkingsHoursEnd)
IPillarNode
Pillar
that it has to be visited by a Resource
outside of her WorkingHours
if IResource.setMaxPillarAfterHoursTime(Duration)
is also set to true
.setIsSchedulableOutsideWorkingHours
in interface IPillarNode
isSchedulableOutsideWorkingsHoursStart
- the boolean if working is possible before workingHoursisSchedulableOutsideWorkingsHoursEnd
- the boolean if working is possible after workingHourspublic boolean isSchedulableBeforeWorkingHours()
IPillarNode
isSchedulableOutsideWorkingsHoursStart
. The default value is false
.isSchedulableBeforeWorkingHours
in interface IPillarNode
public boolean isSchedulableAfterWorkingHours()
IPillarNode
isSchedulableOutsideWorkingsHoursEnd
. The default value is false
.isSchedulableAfterWorkingHours
in interface IPillarNode
public void setIsOverwritingRouteStart(boolean isOverwritingRouteStart, boolean isAdjustable)
IPillarTimeWindowGeoNode
Route start
, forcing the IResource
to visit this AnchorNode
first.
An AnchorNode
essentially is an IPillarNode
that is specifically set to start
or end
an ILogicEntityRoute
. Any driving time or distance for the Resource
between the AnchorNode
and its home is not counted. An example would be a truck driver who has to park his
truck in a specific truck deposit and travels on his own time to/from home.
The boolean isAdjustable
defines whether the Pillar
can still be moved a
bit, allowing the AnchorNode
to be shifted towards the INode
following it on the Route
.
setIsOverwritingRouteStart
in interface IPillarTimeWindowGeoNode
isOverwritingRouteStart
- the boolean, if true
turning the Pillar
in an
AnchorNode
isAdjustable
- the boolean allowing the AnchorNode
to be shifted slightlypublic void setIsOverwritingRouteTermination(boolean isOverwritingRouteTermination, boolean isAdjustable)
IPillarNode
Pillar
to bean AnchorPillar
at which the Route
has to start or end.
The boolean
defines whether the Pillar
can still be moved.setIsOverwritingRouteTermination
in interface IPillarNode
isOverwritingRouteTermination
- the boolean whether it is overwriting route terminationisAdjustable
- the boolean whether it is adjustablepublic boolean isAutoFilterProtected()
INode
Node
is protected from being filtered.isAutoFilterProtected
in interface INode
isAutoFilterProtected
in class AbstractNode
true
if the condition allowspublic boolean isOverwritingRouteStartOrTermination()
IPillarNode
Pillar
is an AnchorPillar
in which case the Route
has to start or
and at said AnchorPillar
.
The default values are false
isOverwritingRouteStartOrTermination
in interface IPillarNode
public boolean isAutoTransformable2StartAnchor()
IPillarTimeWindowGeoNode
Pillar
will automatically transform into an anchorNode
if it is the first Pillar
and
cannot be reached in time..isAutoTransformable2StartAnchor
in interface IPillarTimeWindowGeoNode
anchorNode
public void setAutoTransformable2StartAnchor(boolean isAutoTransformable2StartAnchor)
IPillarTimeWindowGeoNode
Pillar
is the first pillar and cannot be reached in time, it will
automatically transform into an anchorNode
if set to true
.setAutoTransformable2StartAnchor
in interface IPillarTimeWindowGeoNode
isAutoTransformable2StartAnchor
- the boolean, might transform into an anchorNode
if true
public boolean setConnectionRelatedLateMargin(double connectionFator, Duration maxMargin, boolean shiftNode, boolean applyPartial)
IPillarTimeWindowGeoNode
setConnectionRelatedLateMargin
in interface IPillarTimeWindowGeoNode
connectionFator
- the connectionFactormaxMargin
- the max marginshiftNode
- the shift elementapplyPartial
- the apply partialpublic void resetConnectionRelatedMargin()
resetConnectionRelatedMargin
in interface IPillarTimeWindowGeoNode
public Optional<Long> getConnectionRelatedLateMargin(long connectionMillis)
IPillarTimeWindowGeoNode
getConnectionRelatedLateMargin
in interface IPillarTimeWindowGeoNode
connectionMillis
- the connection millispublic boolean isDoElementShiftConnectionRelatedLateMargin()
IPillarTimeWindowGeoNode
isDoElementShiftConnectionRelatedLateMargin
in interface IPillarTimeWindowGeoNode
public boolean isApplyPartialConnectionRelatedLateMargin()
IPillarTimeWindowGeoNode
isApplyPartialConnectionRelatedLateMargin
in interface IPillarTimeWindowGeoNode
public Duration getConnectionRelatedMaxLateMargin()
IPillarTimeWindowGeoNode
getConnectionRelatedMaxLateMargin
in interface IPillarTimeWindowGeoNode
public double getConnectionRelatedMarginFactor()
IPillarTimeWindowGeoNode
getConnectionRelatedMarginFactor
in interface IPillarTimeWindowGeoNode
Copyright © 2017–2023 DNA Evolutions GmbH. All rights reserved.