Maneuver.Builder
public
static
final
class
Maneuver.Builder
extends Object
java.lang.Object | |
↳ | androidx.car.app.navigation.model.Maneuver.Builder |
A builder of Maneuver
.
Summary
Public constructors | |
---|---|
Builder(int type)
Constructs a new instance of a |
Public methods | |
---|---|
Maneuver
|
build()
Constructs the |
Maneuver.Builder
|
setIcon(CarIcon icon)
Sets an image representing the maneuver. |
Maneuver.Builder
|
setRoundaboutExitAngle(int roundaboutExitAngle)
Sets an exit angle for roundabout maneuvers. |
Maneuver.Builder
|
setRoundaboutExitNumber(int roundaboutExitNumber)
Sets an exit number for roundabout maneuvers. |
Inherited methods | |
---|---|
Public constructors
Builder
public Builder (int type)
Constructs a new instance of a Maneuver.Builder
.
The type should be chosen to reflect the closest semantic meaning of the maneuver.
In some cases, an exact type match is not possible, but choosing a similar or slightly
more general type is preferred. Using Maneuver.TYPE_UNKNOWN
is allowed, but some head
units will not display any information in that case.
Parameters | |
---|---|
type |
int : one of the TYPE_* static constants defined in this class |
Throws | |
---|---|
IllegalArgumentException |
if type is not a valid maneuver type
|
Public methods
build
public Maneuver build ()
Constructs the Maneuver
defined by this builder.
Returns | |
---|---|
Maneuver |
Throws | |
---|---|
IllegalArgumentException |
if type includes an exit number and one has
not been set, or if it includes an exit angle and one
has not been set
|
setIcon
public Maneuver.Builder setIcon (CarIcon icon)
Sets an image representing the maneuver.
Image Sizing Guidance
The provided image should have a maximum size of 64 x 64 dp. If the image exceeds this maximum size in either one of the dimensions, it will be scaled down and centered inside the bounding box while preserving the aspect ratio.See CarIcon
for more details related to providing icon and image resources
that work with different car screen pixel densities.
Parameters | |
---|---|
icon |
CarIcon |
Returns | |
---|---|
Maneuver.Builder |
Throws | |
---|---|
NullPointerException |
if icon is null
|
setRoundaboutExitAngle
public Maneuver.Builder setRoundaboutExitAngle (int roundaboutExitAngle)
Sets an exit angle for roundabout maneuvers.
Use for when type
is Maneuver.TYPE_ROUNDABOUT_ENTER_AND_EXIT_CW_WITH_ANGLE
or
Maneuver.TYPE_ROUNDABOUT_ENTER_AND_EXIT_CCW_WITH_ANGLE
. The roundaboutExitAngle
represents the degrees traveled in circulation from the entrance to the exit.
For example, in a 4 exit example, if all the exits are equally spaced then exit 1 would be at 90 degrees, exit 2 at 180, exit 3 at 270 and exit 4 at 360. However if the exits are irregular then a different angle could be provided.
Parameters | |
---|---|
roundaboutExitAngle |
int Value is between 1 and 360 inclusive. |
Returns | |
---|---|
Maneuver.Builder |
Throws | |
---|---|
IllegalArgumentException |
if type does not include a exit angle or if
roundaboutExitAngle is not greater than zero
and less than or equal to 360 degrees
|
setRoundaboutExitNumber
public Maneuver.Builder setRoundaboutExitNumber (int roundaboutExitNumber)
Sets an exit number for roundabout maneuvers.
Use for when type
is Maneuver.TYPE_ROUNDABOUT_ENTER_AND_EXIT_CW
, Maneuver.TYPE_ROUNDABOUT_ENTER_AND_EXIT_CCW
,
Maneuver.TYPE_ROUNDABOUT_ENTER_AND_EXIT_CW_WITH_ANGLE
or
Maneuver.TYPE_ROUNDABOUT_ENTER_AND_EXIT_CCW_WITH_ANGLE
. The roundaboutExitNumber
starts from 1 to designate the first exit after joining the
roundabout, and increases in circulation order.
For example, if the driver is joining a counter-clockwise roundabout with 4 exits, then the exit to the right would be exit #1, the one straight ahead would be exit #2, the one to the left would be exit #3 and the one used by the driver to join the roundabout would be exit #4.
Parameters | |
---|---|
roundaboutExitNumber |
int Value is 1 or greater. |
Returns | |
---|---|
Maneuver.Builder |
Throws | |
---|---|
IllegalArgumentException |
if type does not include a exit number, or
if roundaboutExitNumber is not greater than
zero
|