@orbat-mapper/control-measures 0.2.0-alpha.30 → 0.2.0-alpha.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/{index-DmAFButD.d.mts → index-Do8cc_Wv.d.mts} +58 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +2 -2
- package/dist/preview/index.d.mts +3 -1
- package/dist/preview/index.mjs +6 -3
- package/dist/{renderControlMeasure-CzhJJJHO.mjs → renderControlMeasure-1-LCyEFc.mjs} +179 -2
- package/media/forward-edge-of-battle-area.svg +1 -0
- package/media/secondary-direction-of-fire.svg +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -112,9 +112,11 @@ code.
|
|
|
112
112
|
| --- | --- | --- | --- |
|
|
113
113
|
| <img src="media/flot.svg" width="96" height="48" alt=""> | `flot` | Forward line of own troops (FLOT) | `140100` |
|
|
114
114
|
| <img src="media/phase-line.svg" width="96" height="48" alt=""> | `phase-line` | Phase line | `140300` |
|
|
115
|
+
| <img src="media/forward-edge-of-battle-area.svg" width="96" height="48" alt=""> | `forward-edge-of-battle-area` | Forward edge of the battle area | `140400` |
|
|
115
116
|
| <img src="media/final-protective-fire-left.svg" width="96" height="48" alt=""> | `final-protective-fire-left` | Final Protective Fire (Left) | `140501` |
|
|
116
117
|
| <img src="media/final-protective-fire-right.svg" width="96" height="48" alt=""> | `final-protective-fire-right` | Final Protective Fire (Right) | `140502` |
|
|
117
118
|
| <img src="media/principal-direction-of-fire.svg" width="96" height="48" alt=""> | `principal-direction-of-fire` | Principal Direction of Fire | `140503` |
|
|
119
|
+
| <img src="media/secondary-direction-of-fire.svg" width="96" height="48" alt=""> | `secondary-direction-of-fire` | Secondary Direction of Fire | `140504` |
|
|
118
120
|
| <img src="media/direction-of-attack-aviation.svg" width="96" height="48" alt=""> | `direction-of-attack-aviation` | Direction of Attack — Airborne/Aviation | `140601` |
|
|
119
121
|
| <img src="media/direction-of-main-attack.svg" width="96" height="48" alt=""> | `direction-of-main-attack` | Direction of Main Attack | `140602` |
|
|
120
122
|
| <img src="media/direction-of-supporting-attack.svg" width="96" height="48" alt=""> | `direction-of-supporting-attack` | Direction of Supporting Attack | `140603` |
|
|
@@ -23,6 +23,13 @@ interface ControlMeasureDrawRule {
|
|
|
23
23
|
* `minimumUserPoints` (no early preview).
|
|
24
24
|
*/
|
|
25
25
|
readonly minimumPreviewPoints?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Let a repeat click on the latest point commit the rule's early derived
|
|
28
|
+
* preview before `minimumUserPoints` raw anchors have been placed. Use only
|
|
29
|
+
* when `derive` produces a meaningful default canonical shape from
|
|
30
|
+
* `minimumPreviewPoints` points.
|
|
31
|
+
*/
|
|
32
|
+
readonly finishOnLastPointRepeat?: boolean;
|
|
26
33
|
/**
|
|
27
34
|
* Opt a fixed-length draw into the standard dashed interaction guide. Fixed
|
|
28
35
|
* shapes suppress guides by default because their generator preview is
|
|
@@ -1000,6 +1007,27 @@ declare const DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS: Required<PrincipalDir
|
|
|
1000
1007
|
*/
|
|
1001
1008
|
declare function createPrincipalDirectionOfFire(coordinates: Position[], options?: PrincipalDirectionOfFireOptions): FeatureCollection<MultiLineString, Record<string, never>>;
|
|
1002
1009
|
//#endregion
|
|
1010
|
+
//#region src/generators/cm14-maneuver-lines/secondaryDirectionOfFire.d.ts
|
|
1011
|
+
/** Configuration options for the Secondary Direction of Fire tactical symbol. */
|
|
1012
|
+
type SecondaryDirectionOfFireOptions = PrincipalDirectionOfFireOptions;
|
|
1013
|
+
declare const DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS: Required<SecondaryDirectionOfFireOptions>;
|
|
1014
|
+
/** Dash and gap lengths used by the two fire-direction arms. */
|
|
1015
|
+
declare const SECONDARY_DIRECTION_OF_FIRE_DASH: readonly [6, 4];
|
|
1016
|
+
interface SecondaryDirectionOfFireProperties extends Record<string, unknown> {
|
|
1017
|
+
part: "arms" | "arrowheads";
|
|
1018
|
+
style: {
|
|
1019
|
+
strokeDash: number[];
|
|
1020
|
+
};
|
|
1021
|
+
}
|
|
1022
|
+
/**
|
|
1023
|
+
* Creates the same V-shaped field-of-fire geometry as Principal Direction of
|
|
1024
|
+
* Fire, with dashed arms and solid open arrowheads.
|
|
1025
|
+
*
|
|
1026
|
+
* @param coordinates - [PT 1 (vertex), PT 2 (tip), PT 3 (tip)]
|
|
1027
|
+
* @param options - Arrowhead sizing parameters
|
|
1028
|
+
*/
|
|
1029
|
+
declare function createSecondaryDirectionOfFire(coordinates: Position[], options?: SecondaryDirectionOfFireOptions): FeatureCollection<MultiLineString, SecondaryDirectionOfFireProperties>;
|
|
1030
|
+
//#endregion
|
|
1003
1031
|
//#region src/rendered.d.ts
|
|
1004
1032
|
/**
|
|
1005
1033
|
* Per-feature style hints carried on `properties.style`.
|
|
@@ -1877,6 +1905,31 @@ declare const DEFAULT_PHASE_LINE_OPTIONS: PhaseLineOptions;
|
|
|
1877
1905
|
*/
|
|
1878
1906
|
declare function createPhaseLine(positions: Position[], options?: PhaseLineOptions, textAmplifiers?: CanonicalTextAmplifiers): FeatureCollection<LineString | Point>;
|
|
1879
1907
|
//#endregion
|
|
1908
|
+
//#region src/generators/cm14-maneuver-lines/forward-edge-of-battle-area.d.ts
|
|
1909
|
+
/** Configuration options for the Forward edge of the battle area control measure. */
|
|
1910
|
+
interface ForwardEdgeOfBattleAreaOptions extends LineLabelOptions, SmoothLineOptions {
|
|
1911
|
+
/**
|
|
1912
|
+
* Optional phase line naming: renders `PL <name>` just beyond each end of
|
|
1913
|
+
* the line, additive to the fixed "FEBA" labels. Empty or whitespace-only
|
|
1914
|
+
* renders no label.
|
|
1915
|
+
* @default none
|
|
1916
|
+
*/
|
|
1917
|
+
phaseLineName?: string;
|
|
1918
|
+
/**
|
|
1919
|
+
* Prefix the `phaseLineName` label with "PL" (`"PL MOCHA"`, or a bare
|
|
1920
|
+
* "MOCHA" when `false`). No effect when `phaseLineName` is empty.
|
|
1921
|
+
* @default true
|
|
1922
|
+
*/
|
|
1923
|
+
includePrefix?: boolean;
|
|
1924
|
+
}
|
|
1925
|
+
/** Default options for the Forward edge of the battle area control measure. */
|
|
1926
|
+
declare const DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS: ForwardEdgeOfBattleAreaOptions;
|
|
1927
|
+
/**
|
|
1928
|
+
* Creates a Forward edge of the battle area control measure: a polyline
|
|
1929
|
+
* through `positions` labeled "FEBA" above the line near each end.
|
|
1930
|
+
*/
|
|
1931
|
+
declare function createForwardEdgeOfBattleArea(positions: Position[], options?: ForwardEdgeOfBattleAreaOptions, textAmplifiers?: CanonicalTextAmplifiers): FeatureCollection<LineString | Point>;
|
|
1932
|
+
//#endregion
|
|
1880
1933
|
//#region src/generators/cm14-maneuver-lines/handover-line.d.ts
|
|
1881
1934
|
/** Configuration options for the Handover line control measure. */
|
|
1882
1935
|
interface HandoverLineOptions extends LineLabelOptions, SmoothLineOptions {
|
|
@@ -2506,6 +2559,7 @@ declare const DEFINITIONS: {
|
|
|
2506
2559
|
"direction-of-main-attack": ControlMeasureDefinition<"direction-of-main-attack", typeof createDirectionOfMainAttack>;
|
|
2507
2560
|
"direction-of-supporting-attack": ControlMeasureDefinition<"direction-of-supporting-attack", typeof createDirectionOfSupportingAttack>;
|
|
2508
2561
|
"principal-direction-of-fire": ControlMeasureDefinition<"principal-direction-of-fire", typeof createPrincipalDirectionOfFire>;
|
|
2562
|
+
"secondary-direction-of-fire": ControlMeasureDefinition<"secondary-direction-of-fire", typeof createSecondaryDirectionOfFire>;
|
|
2509
2563
|
"final-protective-fire-left": ControlMeasureDefinition<"final-protective-fire-left", typeof createFinalProtectiveFireLeft>;
|
|
2510
2564
|
"final-protective-fire-right": ControlMeasureDefinition<"final-protective-fire-right", typeof createFinalProtectiveFireRight>;
|
|
2511
2565
|
"search-area": ControlMeasureDefinition<"search-area", (controlPoints: import("geojson").Position[], options?: TacticalArrowOptions) => import("geojson").FeatureCollection<import("geojson").MultiLineString | import("geojson").MultiPolygon, {
|
|
@@ -2551,6 +2605,7 @@ declare const DEFINITIONS: {
|
|
|
2551
2605
|
"attack-by-fire": ControlMeasureDefinition<"attack-by-fire", typeof createAttackByFire>;
|
|
2552
2606
|
flot: ControlMeasureDefinition<"flot", typeof createFLOT>;
|
|
2553
2607
|
"phase-line": ControlMeasureDefinition<"phase-line", typeof createPhaseLine>;
|
|
2608
|
+
"forward-edge-of-battle-area": ControlMeasureDefinition<"forward-edge-of-battle-area", typeof createForwardEdgeOfBattleArea>;
|
|
2554
2609
|
"handover-line": ControlMeasureDefinition<"handover-line", typeof createHandoverLine>;
|
|
2555
2610
|
"battle-handover-line": ControlMeasureDefinition<"battle-handover-line", typeof createBattleHandoverLine>;
|
|
2556
2611
|
"block-mission-task": ControlMeasureDefinition<"block-mission-task", typeof createBlockMissionTaskSymbol>;
|
|
@@ -2784,6 +2839,8 @@ interface MidpointPerpendicularDrawRuleOptions {
|
|
|
2784
2839
|
minimumUserPoints?: number;
|
|
2785
2840
|
/** Raw points at which a live preview can be derived. See {@link ControlMeasureDrawRule}. */
|
|
2786
2841
|
minimumPreviewPoints?: number;
|
|
2842
|
+
/** Allow a repeated last point to commit the early derived preview. */
|
|
2843
|
+
finishOnLastPointRepeat?: boolean;
|
|
2787
2844
|
/**
|
|
2788
2845
|
* Index of the slot whose point is constrained to the perpendicular axis
|
|
2789
2846
|
* through the configured origin of the other two ("baseline") slots. Must be
|
|
@@ -2927,4 +2984,4 @@ interface AmbushOptions {
|
|
|
2927
2984
|
}
|
|
2928
2985
|
declare const DEFAULT_AMBUSH_OPTIONS: Required<AmbushOptions>;
|
|
2929
2986
|
//#endregion
|
|
2930
|
-
export { DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as $,
|
|
2987
|
+
export { DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as $, PrincipalDirectionOfFireOptions as $n, AttackByFireOptions as $t, roundToFixed as A, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as An, ControlMeasurePaintCapability as Ar, DEFAULT_COVER_OPTIONS as At, cloneControlMeasure as B, DEFAULT_AREA_DEFENSE_OPTIONS as Bn, TextAmplifierKey as Br, DEFAULT_BREACH_OPTIONS as Bt, BaselineFrame as C, DEFAULT_SUPPORTING_ATTACK_OPTIONS as Cn, BoundaryOptions as Cr, DEFAULT_SCREEN_OPTIONS as Ct, createBaselineFrame as D, calculateMetrics as Dn, ControlMeasureGeometry as Dr, DEFAULT_DELAY_OPTIONS as Dt, BaselineFrameOrigin as E, MainAttackOptions as En, ControlMeasureFillCapability as Er, GuardOptions as Et, applyBoxTransformOptions as F, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as Fn, CanonicalTextAmplifiers as Fr, CanalizeOptions as Ft, ControlMeasureKind as G, ControlMeasureRender as Gn, AnchorTransformEvent as Gr, DEFAULT_HANDOVER_LINE_OPTIONS as Gt, CONTROL_MEASURE_IDS as H, EncirclementOptions as Hn, canonicalTextAmplifierKey as Hr, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as Ht, freezeOrientationOptions as I, JointTacticalActionAreaOptions as In, GeneratedLabelKey as Ir, DEFAULT_CANALIZE_OPTIONS as It, getControlMeasureMetadataByValue as J, controlMeasureIdFromFeature as Jn, ForwardEdgeOfBattleAreaOptions as Jt, OptionsByKind as K, FeaturePartProps as Kn, ControlMeasureDrawRule as Kr, HandoverLineOptions as Kt, RenderOptions as L, AssemblyAreaOptions as Ln, LabelPlacementOverride as Lr, BypassOptions as Lt, SimpleStyleRender as M, PickupZoneOptions as Mn, TextAmplifierDescriptor as Mr, TacticalArrowOptions as Mt, toSimpleStyle as N, DEFAULT_LANDING_ZONE_OPTIONS as Nn, AmplifierPlacement as Nr, ClearOptions as Nt, EPSILON as O, computeInitialWidthPoint as On, ControlMeasureGeometryType as Or, DelayOptions as Ot, resolveStyleHints as P, LandingZoneOptions as Pn, AmplifierPlacements as Pr, DEFAULT_CLEAR_OPTIONS as Pt, ObstacleBypassImpossibleOptions as Q, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as Qn, FLOTOptions as Qt, renderControlMeasure as R, DEFAULT_ASSEMBLY_AREA_OPTIONS as Rn, TEXT_AMPLIFIER_FIELDS as Rr, DEFAULT_BYPASS_OPTIONS as Rt, snapToMidpointPerpendicular as S, DEFAULT_CLASSIC_ARROW_OPTIONS as Sn, unproject as Sr, DEFAULT_ANTITANK_DITCH_OPTIONS as St, BaselineFrameOptions as T, DEFAULT_MAIN_ATTACK_OPTIONS as Tn, BoxTransformDelta as Tr, DEFAULT_GUARD_OPTIONS as Tt, CONTROL_MEASURE_METADATA as U, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as Un, normalizeTextAmplifiers as Ur, BattleHandoverLineOptions as Ut, isKind as V, DEFAULT_ENCIRCLEMENT_OPTIONS as Vn, TextAmplifiers as Vr, BlockMissionTaskOptions as Vt, ControlMeasureId as W, FinalProtectiveFireOptions as Wn, resolveAmplifierPlacement as Wr, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as Wt, listControlMeasureMetadata as X, SECONDARY_DIRECTION_OF_FIRE_DASH as Xn, PhaseLineOptions as Xt, getDefaultOptions as Y, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS as Yn, DEFAULT_PHASE_LINE_OPTIONS as Yt, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as Z, SecondaryDirectionOfFireOptions as Zn, DEFAULT_FLOT_OPTIONS as Zt, MidpointPerpendicularDrawRuleOptions as _, BlockArrowHeadStyle as _n, LightLineOptions as _r, DEFAULT_FORTIFIED_LINE_OPTIONS as _t, supportByFireDrawRule as a, AirborneAttackOptions as an, DirectionOfAttackAviationOptions as ar, DEFAULT_FIX_OPTIONS as at, getMidpointPerpendicularSignedDistance as b, ClassicArrowHeadStyle as bn, haversineDistance as br, DEFAULT_ANTITANK_WALL_OPTIONS as bt, line23DrawRule as c, GenericTextOptions as cn, BattlePositionOptions as cr, DisruptOptions as ct, ambushDrawRule as d, DEFAULT_GENERIC_RECTANGLE_OPTIONS as dn, FillPattern as dr, DEFAULT_TURNING_MOVEMENT_OPTIONS as dt, DEFAULT_ATTACK_BY_FIRE_OPTIONS as en, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as er, ObstacleBypassDifficultOptions as et, attackByFireDrawRule as f, GenericRectangleOptions as fn, DEFAULT_GENERIC_C2_LINE_OPTIONS as fr, TurningMovementOptions as ft, blockDrawRule as g, GenericLineOptions as gn, DEFAULT_LIGHT_LINE_OPTIONS as gr, FortifiedAreaOptions as gt, disruptDrawRule as h, DEFAULT_GENERIC_LINE_OPTIONS as hn, EngineerWorkLineOptions as hr, DEFAULT_FORTIFIED_AREA_OPTIONS as ht, axis1DrawRule as i, DEFAULT_ATTACK_HELICOPTER_OPTIONS as in, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as ir, TurnOptions as it, SimpleStyleProps as j, DEFAULT_PICKUP_ZONE_OPTIONS as jn, ParamDescriptor as jr, DEFAULT_TACTICAL_ARROW_OPTIONS as jt, getMetersPerPixel as k, AreaOfOperationsOptions as kn, ControlMeasureMetadata as kr, CoverOptions as kt, turnDrawRule as l, DEFAULT_GENERIC_CIRCLE_OPTIONS as ln, DEFAULT_BATTLE_POSITION_OPTIONS as lr, BlockOptions as lt, centerRadiusDrawRule as m, GenericPolygonOptions as mn, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as mr, FrontalAttackOptions as mt, DEFAULT_AMBUSH_OPTIONS as n, SupportByFireOptions as nn, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as nr, ObstacleBypassEasyOptions as nt, line26DrawRule as o, DEFAULT_AIRBORNE_ATTACK_OPTIONS as on, DEFAULT_STRONG_POINT_OPTIONS as or, FixOptions as ot, point12DrawRule as p, DEFAULT_GENERIC_POLYGON_OPTIONS as pn, GenericC2LineOptions as pr, DEFAULT_FRONTAL_ATTACK_OPTIONS as pt, getControlMeasureMetadata as q, StyleHints as qn, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS as qt, rectangleDrawRule as r, AttackHelicopterOptions as rn, DirectionOfMainAttackOptions as rr, DEFAULT_TURN_OPTIONS as rt, line24DrawRule as s, DEFAULT_GENERIC_TEXT_OPTIONS as sn, StrongPointOptions as sr, DEFAULT_DISRUPT_OPTIONS as st, AmbushOptions as t, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as tn, DirectionOfSupportingAttackOptions as tr, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as tt, line1DrawRule as u, GenericCircleOptions as un, ControlMeasureStyle as ur, DEFAULT_BLOCK_OPTIONS as ut, computeDefaultMidpointPerpendicularPoint as v, BlockArrowOptions as vn, LabelSizeOptions as vr, FortifiedLineOptions as vt, BaselineFrameNormal as w, SupportingAttackOptions as wn, DEFAULT_BOUNDARY_OPTIONS as wr, ScreenOptions as wt, pointOnMidpointPerpendicularAxis as x, ClassicArrowOptions as xn, project as xr, AntitankDitchOptions as xt, createMidpointPerpendicularDrawRule as y, DEFAULT_BLOCK_ARROW_OPTIONS as yn, Point2D as yr, AntitankWallOptions as yt, ControlMeasure as z, AreaDefenseOptions as zn, TextAmplifierField as zr, BreachOptions as zt };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, $n as
|
|
2
|
-
export { type AirborneAttackOptions, type AmbushOptions, type AmplifierPlacement, type AmplifierPlacements, type AnchorTransformEvent, type AntitankDitchOptions, type AntitankWallOptions, type AreaDefenseOptions, type AreaOfOperationsOptions, type AssemblyAreaOptions, type AttackByFireOptions, type AttackHelicopterOptions, type BaselineFrame, type BaselineFrameNormal, type BaselineFrameOptions, type BaselineFrameOrigin, type BattleHandoverLineOptions, type BattlePositionOptions, type BlockArrowHeadStyle, type BlockArrowOptions, type BlockMissionTaskOptions, type BlockOptions, type BoundaryOptions, type BoxTransformDelta, type BreachOptions, type BypassOptions, CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, type CanalizeOptions, type CanonicalTextAmplifiers, type ClassicArrowHeadStyle, type ClassicArrowOptions, type ClearOptions, type ControlMeasure, type ControlMeasureDrawRule, type ControlMeasureFillCapability, type ControlMeasureGeometry, type ControlMeasureGeometryType, type ControlMeasureId, type ControlMeasureKind, type ControlMeasureMetadata, type ControlMeasurePaintCapability, type ControlMeasureRender, type ControlMeasureStyle, type CoverOptions, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, type DelayOptions, type DirectionOfAttackAviationOptions, type DirectionOfMainAttackOptions, type DirectionOfSupportingAttackOptions, type DisruptOptions, EPSILON, type EncirclementOptions, type EngineerWorkLineOptions, type FLOTOptions, type FeaturePartProps, type FillPattern, type FinalProtectiveFireOptions, type FixOptions, type FortifiedAreaOptions, type FortifiedLineOptions, type FrontalAttackOptions, type GeneratedLabelKey, type GenericC2LineOptions, type GenericCircleOptions, type GenericLineOptions, type GenericPolygonOptions, type GenericRectangleOptions, type GenericTextOptions, type GuardOptions, type HandoverLineOptions, type JointTacticalActionAreaOptions, type LabelPlacementOverride, type LabelSizeOptions, type LandingZoneOptions, type LightLineOptions, type MainAttackOptions, type MidpointPerpendicularDrawRuleOptions, type ObstacleBypassDifficultOptions, type ObstacleBypassEasyOptions, type ObstacleBypassImpossibleOptions, type OptionsByKind, type ParamDescriptor, type PhaseLineOptions, type PickupZoneOptions, type Point2D, type PrincipalDirectionOfFireOptions, type RenderOptions, type ScreenOptions, type SimpleStyleProps, type SimpleStyleRender, type StrongPointOptions, type StyleHints, type SupportByFireOptions, type SupportingAttackOptions, TEXT_AMPLIFIER_FIELDS, type TacticalArrowOptions, type TextAmplifierDescriptor, type TextAmplifierField, type TextAmplifierKey, type TextAmplifiers, type TurnOptions, type TurningMovementOptions, ambushDrawRule, applyBoxTransformOptions, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getDefaultOptions, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveStyleHints, roundToFixed, snapToMidpointPerpendicular, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
|
|
1
|
+
import { $ as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, $n as PrincipalDirectionOfFireOptions, $t as AttackByFireOptions, A as roundToFixed, An as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, Ar as ControlMeasurePaintCapability, At as DEFAULT_COVER_OPTIONS, B as cloneControlMeasure, Bn as DEFAULT_AREA_DEFENSE_OPTIONS, Br as TextAmplifierKey, Bt as DEFAULT_BREACH_OPTIONS, C as BaselineFrame, Cn as DEFAULT_SUPPORTING_ATTACK_OPTIONS, Cr as BoundaryOptions, Ct as DEFAULT_SCREEN_OPTIONS, D as createBaselineFrame, Dn as calculateMetrics, Dr as ControlMeasureGeometry, Dt as DEFAULT_DELAY_OPTIONS, E as BaselineFrameOrigin, En as MainAttackOptions, Er as ControlMeasureFillCapability, Et as GuardOptions, F as applyBoxTransformOptions, Fn as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Fr as CanonicalTextAmplifiers, Ft as CanalizeOptions, G as ControlMeasureKind, Gn as ControlMeasureRender, Gr as AnchorTransformEvent, Gt as DEFAULT_HANDOVER_LINE_OPTIONS, H as CONTROL_MEASURE_IDS, Hn as EncirclementOptions, Hr as canonicalTextAmplifierKey, Ht as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, I as freezeOrientationOptions, In as JointTacticalActionAreaOptions, Ir as GeneratedLabelKey, It as DEFAULT_CANALIZE_OPTIONS, J as getControlMeasureMetadataByValue, Jn as controlMeasureIdFromFeature, Jt as ForwardEdgeOfBattleAreaOptions, K as OptionsByKind, Kn as FeaturePartProps, Kr as ControlMeasureDrawRule, Kt as HandoverLineOptions, L as RenderOptions, Ln as AssemblyAreaOptions, Lr as LabelPlacementOverride, Lt as BypassOptions, M as SimpleStyleRender, Mn as PickupZoneOptions, Mr as TextAmplifierDescriptor, Mt as TacticalArrowOptions, N as toSimpleStyle, Nn as DEFAULT_LANDING_ZONE_OPTIONS, Nr as AmplifierPlacement, Nt as ClearOptions, O as EPSILON, On as computeInitialWidthPoint, Or as ControlMeasureGeometryType, Ot as DelayOptions, P as resolveStyleHints, Pn as LandingZoneOptions, Pr as AmplifierPlacements, Pt as DEFAULT_CLEAR_OPTIONS, Q as ObstacleBypassImpossibleOptions, Qn as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, Qt as FLOTOptions, R as renderControlMeasure, Rn as DEFAULT_ASSEMBLY_AREA_OPTIONS, Rr as TEXT_AMPLIFIER_FIELDS, Rt as DEFAULT_BYPASS_OPTIONS, S as snapToMidpointPerpendicular, Sn as DEFAULT_CLASSIC_ARROW_OPTIONS, Sr as unproject, St as DEFAULT_ANTITANK_DITCH_OPTIONS, T as BaselineFrameOptions, Tn as DEFAULT_MAIN_ATTACK_OPTIONS, Tr as BoxTransformDelta, Tt as DEFAULT_GUARD_OPTIONS, U as CONTROL_MEASURE_METADATA, Un as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Ur as normalizeTextAmplifiers, Ut as BattleHandoverLineOptions, V as isKind, Vn as DEFAULT_ENCIRCLEMENT_OPTIONS, Vr as TextAmplifiers, Vt as BlockMissionTaskOptions, W as ControlMeasureId, Wn as FinalProtectiveFireOptions, Wr as resolveAmplifierPlacement, Wt as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, X as listControlMeasureMetadata, Xn as SECONDARY_DIRECTION_OF_FIRE_DASH, Xt as PhaseLineOptions, Y as getDefaultOptions, Yn as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, Yt as DEFAULT_PHASE_LINE_OPTIONS, Z as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, Zn as SecondaryDirectionOfFireOptions, Zt as DEFAULT_FLOT_OPTIONS, _ as MidpointPerpendicularDrawRuleOptions, _n as BlockArrowHeadStyle, _r as LightLineOptions, _t as DEFAULT_FORTIFIED_LINE_OPTIONS, a as supportByFireDrawRule, an as AirborneAttackOptions, ar as DirectionOfAttackAviationOptions, at as DEFAULT_FIX_OPTIONS, b as getMidpointPerpendicularSignedDistance, bn as ClassicArrowHeadStyle, br as haversineDistance, bt as DEFAULT_ANTITANK_WALL_OPTIONS, c as line23DrawRule, cn as GenericTextOptions, cr as BattlePositionOptions, ct as DisruptOptions, d as ambushDrawRule, dn as DEFAULT_GENERIC_RECTANGLE_OPTIONS, dr as FillPattern, dt as DEFAULT_TURNING_MOVEMENT_OPTIONS, en as DEFAULT_ATTACK_BY_FIRE_OPTIONS, er as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, et as ObstacleBypassDifficultOptions, f as attackByFireDrawRule, fn as GenericRectangleOptions, fr as DEFAULT_GENERIC_C2_LINE_OPTIONS, ft as TurningMovementOptions, g as blockDrawRule, gn as GenericLineOptions, gr as DEFAULT_LIGHT_LINE_OPTIONS, gt as FortifiedAreaOptions, h as disruptDrawRule, hn as DEFAULT_GENERIC_LINE_OPTIONS, hr as EngineerWorkLineOptions, ht as DEFAULT_FORTIFIED_AREA_OPTIONS, i as axis1DrawRule, in as DEFAULT_ATTACK_HELICOPTER_OPTIONS, ir as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, it as TurnOptions, j as SimpleStyleProps, jn as DEFAULT_PICKUP_ZONE_OPTIONS, jr as ParamDescriptor, jt as DEFAULT_TACTICAL_ARROW_OPTIONS, k as getMetersPerPixel, kn as AreaOfOperationsOptions, kr as ControlMeasureMetadata, kt as CoverOptions, l as turnDrawRule, ln as DEFAULT_GENERIC_CIRCLE_OPTIONS, lr as DEFAULT_BATTLE_POSITION_OPTIONS, lt as BlockOptions, m as centerRadiusDrawRule, mn as GenericPolygonOptions, mr as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, mt as FrontalAttackOptions, n as DEFAULT_AMBUSH_OPTIONS, nn as SupportByFireOptions, nr as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, nt as ObstacleBypassEasyOptions, o as line26DrawRule, on as DEFAULT_AIRBORNE_ATTACK_OPTIONS, or as DEFAULT_STRONG_POINT_OPTIONS, ot as FixOptions, p as point12DrawRule, pn as DEFAULT_GENERIC_POLYGON_OPTIONS, pr as GenericC2LineOptions, pt as DEFAULT_FRONTAL_ATTACK_OPTIONS, q as getControlMeasureMetadata, qn as StyleHints, qt as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, r as rectangleDrawRule, rn as AttackHelicopterOptions, rr as DirectionOfMainAttackOptions, rt as DEFAULT_TURN_OPTIONS, s as line24DrawRule, sn as DEFAULT_GENERIC_TEXT_OPTIONS, sr as StrongPointOptions, st as DEFAULT_DISRUPT_OPTIONS, t as AmbushOptions, tn as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, tr as DirectionOfSupportingAttackOptions, tt as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, u as line1DrawRule, un as GenericCircleOptions, ur as ControlMeasureStyle, ut as DEFAULT_BLOCK_OPTIONS, v as computeDefaultMidpointPerpendicularPoint, vn as BlockArrowOptions, vr as LabelSizeOptions, vt as FortifiedLineOptions, w as BaselineFrameNormal, wn as SupportingAttackOptions, wr as DEFAULT_BOUNDARY_OPTIONS, wt as ScreenOptions, x as pointOnMidpointPerpendicularAxis, xn as ClassicArrowOptions, xr as project, xt as AntitankDitchOptions, y as createMidpointPerpendicularDrawRule, yn as DEFAULT_BLOCK_ARROW_OPTIONS, yr as Point2D, yt as AntitankWallOptions, z as ControlMeasure, zn as AreaDefenseOptions, zr as TextAmplifierField, zt as BreachOptions } from "./index-Do8cc_Wv.mjs";
|
|
2
|
+
export { type AirborneAttackOptions, type AmbushOptions, type AmplifierPlacement, type AmplifierPlacements, type AnchorTransformEvent, type AntitankDitchOptions, type AntitankWallOptions, type AreaDefenseOptions, type AreaOfOperationsOptions, type AssemblyAreaOptions, type AttackByFireOptions, type AttackHelicopterOptions, type BaselineFrame, type BaselineFrameNormal, type BaselineFrameOptions, type BaselineFrameOrigin, type BattleHandoverLineOptions, type BattlePositionOptions, type BlockArrowHeadStyle, type BlockArrowOptions, type BlockMissionTaskOptions, type BlockOptions, type BoundaryOptions, type BoxTransformDelta, type BreachOptions, type BypassOptions, CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, type CanalizeOptions, type CanonicalTextAmplifiers, type ClassicArrowHeadStyle, type ClassicArrowOptions, type ClearOptions, type ControlMeasure, type ControlMeasureDrawRule, type ControlMeasureFillCapability, type ControlMeasureGeometry, type ControlMeasureGeometryType, type ControlMeasureId, type ControlMeasureKind, type ControlMeasureMetadata, type ControlMeasurePaintCapability, type ControlMeasureRender, type ControlMeasureStyle, type CoverOptions, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, type DelayOptions, type DirectionOfAttackAviationOptions, type DirectionOfMainAttackOptions, type DirectionOfSupportingAttackOptions, type DisruptOptions, EPSILON, type EncirclementOptions, type EngineerWorkLineOptions, type FLOTOptions, type FeaturePartProps, type FillPattern, type FinalProtectiveFireOptions, type FixOptions, type FortifiedAreaOptions, type FortifiedLineOptions, type ForwardEdgeOfBattleAreaOptions, type FrontalAttackOptions, type GeneratedLabelKey, type GenericC2LineOptions, type GenericCircleOptions, type GenericLineOptions, type GenericPolygonOptions, type GenericRectangleOptions, type GenericTextOptions, type GuardOptions, type HandoverLineOptions, type JointTacticalActionAreaOptions, type LabelPlacementOverride, type LabelSizeOptions, type LandingZoneOptions, type LightLineOptions, type MainAttackOptions, type MidpointPerpendicularDrawRuleOptions, type ObstacleBypassDifficultOptions, type ObstacleBypassEasyOptions, type ObstacleBypassImpossibleOptions, type OptionsByKind, type ParamDescriptor, type PhaseLineOptions, type PickupZoneOptions, type Point2D, type PrincipalDirectionOfFireOptions, type RenderOptions, SECONDARY_DIRECTION_OF_FIRE_DASH, type ScreenOptions, type SecondaryDirectionOfFireOptions, type SimpleStyleProps, type SimpleStyleRender, type StrongPointOptions, type StyleHints, type SupportByFireOptions, type SupportingAttackOptions, TEXT_AMPLIFIER_FIELDS, type TacticalArrowOptions, type TextAmplifierDescriptor, type TextAmplifierField, type TextAmplifierKey, type TextAmplifiers, type TurnOptions, type TurningMovementOptions, ambushDrawRule, applyBoxTransformOptions, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getDefaultOptions, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveStyleHints, roundToFixed, snapToMidpointPerpendicular, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as
|
|
1
|
+
import { $ as DEFAULT_GENERIC_C2_LINE_OPTIONS, A as DEFAULT_HANDOVER_LINE_OPTIONS, At as ambushDrawRule, B as DEFAULT_COVER_OPTIONS, Bt as snapToMidpointPerpendicular, C as DEFAULT_LANDING_ZONE_OPTIONS, Ct as axis1DrawRule, D as DEFAULT_FORTIFIED_AREA_OPTIONS, Dt as line23DrawRule, E as DEFAULT_FRONTAL_ATTACK_OPTIONS, Et as line24DrawRule, F as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Ft as blockDrawRule, G as DEFAULT_GENERIC_POLYGON_OPTIONS, Gt as project, H as DEFAULT_CLEAR_OPTIONS, Ht as calculateMetrics, I as DEFAULT_ENCIRCLEMENT_OPTIONS, It as computeDefaultMidpointPerpendicularPoint, J as DEFAULT_CLASSIC_ARROW_OPTIONS, Jt as getMetersPerPixel, K as DEFAULT_GENERIC_LINE_OPTIONS, Kt as unproject, L as DEFAULT_DISRUPT_OPTIONS, Lt as createMidpointPerpendicularDrawRule, M as DEFAULT_PHASE_LINE_OPTIONS, Mt as point12DrawRule, N as DEFAULT_FLOT_OPTIONS, Nt as centerRadiusDrawRule, O as DEFAULT_FORTIFIED_LINE_OPTIONS, Ot as turnDrawRule, P as DEFAULT_FIX_OPTIONS, Pt as disruptDrawRule, Q as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, R as DEFAULT_GUARD_OPTIONS, Rt as getMidpointPerpendicularSignedDistance, S as DEFAULT_MAIN_ATTACK_OPTIONS, St as rectangleDrawRule, T as DEFAULT_SCREEN_OPTIONS, Tt as line26DrawRule, U as DEFAULT_GENERIC_TEXT_OPTIONS, Ut as computeInitialWidthPoint, V as DEFAULT_TACTICAL_ARROW_OPTIONS, Vt as createBaselineFrame, W as DEFAULT_GENERIC_RECTANGLE_OPTIONS, Wt as haversineDistance, X as DEFAULT_BYPASS_OPTIONS, Y as DEFAULT_CANALIZE_OPTIONS, Yt as roundToFixed, Z as DEFAULT_BREACH_OPTIONS, _ as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, _t as canonicalTextAmplifierKey, a as DEFINITIONS, at as DEFAULT_BATTLE_POSITION_OPTIONS, b as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, bt as DEFAULT_AMBUSH_OPTIONS, c as getDefaultOptions, ct as DEFAULT_ANTITANK_WALL_OPTIONS, d as DEFAULT_TURN_OPTIONS, dt as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, et as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, f as DEFAULT_SUPPORTING_ATTACK_OPTIONS, ft as DEFAULT_AREA_DEFENSE_OPTIONS, g as SECONDARY_DIRECTION_OF_FIRE_DASH, gt as TEXT_AMPLIFIER_FIELDS, h as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, ht as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, i as CONTROL_MEASURE_METADATA, it as DEFAULT_BLOCK_OPTIONS, j as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, jt as attackByFireDrawRule, k as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, kt as line1DrawRule, l as listControlMeasureMetadata, lt as DEFAULT_ANTITANK_DITCH_OPTIONS, m as DEFAULT_STRONG_POINT_OPTIONS, mt as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, n as resolveStyleHints, nt as DEFAULT_BOUNDARY_OPTIONS, o as getControlMeasureMetadata, ot as DEFAULT_ATTACK_HELICOPTER_OPTIONS, p as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, pt as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, q as DEFAULT_GENERIC_CIRCLE_OPTIONS, qt as EPSILON, r as CONTROL_MEASURE_IDS, rt as DEFAULT_BLOCK_ARROW_OPTIONS, s as getControlMeasureMetadataByValue, st as DEFAULT_ATTACK_BY_FIRE_OPTIONS, t as renderControlMeasure, tt as DEFAULT_LIGHT_LINE_OPTIONS, u as DEFAULT_TURNING_MOVEMENT_OPTIONS, ut as DEFAULT_ASSEMBLY_AREA_OPTIONS, v as DEFAULT_PICKUP_ZONE_OPTIONS, vt as normalizeTextAmplifiers, w as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, wt as supportByFireDrawRule, x as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, xt as DEFAULT_AIRBORNE_ATTACK_OPTIONS, y as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, yt as resolveAmplifierPlacement, z as DEFAULT_DELAY_OPTIONS, zt as pointOnMidpointPerpendicularAxis } from "./renderControlMeasure-1-LCyEFc.mjs";
|
|
2
2
|
//#region src/freeze-orientation.ts
|
|
3
3
|
/**
|
|
4
4
|
* Dispatches to a measure kind's `freezeOrientation` hook (see
|
|
@@ -129,4 +129,4 @@ function toHexChannel(value) {
|
|
|
129
129
|
return Math.max(0, Math.min(255, Math.round(value))).toString(16).padStart(2, "0");
|
|
130
130
|
}
|
|
131
131
|
//#endregion
|
|
132
|
-
export { CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, EPSILON, TEXT_AMPLIFIER_FIELDS, ambushDrawRule, applyBoxTransformOptions, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getDefaultOptions, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveStyleHints, roundToFixed, snapToMidpointPerpendicular, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
|
|
132
|
+
export { CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, EPSILON, SECONDARY_DIRECTION_OF_FIRE_DASH, TEXT_AMPLIFIER_FIELDS, ambushDrawRule, applyBoxTransformOptions, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getDefaultOptions, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveStyleHints, roundToFixed, snapToMidpointPerpendicular, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
|
package/dist/preview/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Vr as TextAmplifiers, W as ControlMeasureId, dr as FillPattern } from "../index-Do8cc_Wv.mjs";
|
|
2
2
|
import { FeatureCollection, Geometry } from "geojson";
|
|
3
3
|
|
|
4
4
|
//#region src/preview/index.d.ts
|
|
@@ -42,6 +42,8 @@ interface PreviewShape {
|
|
|
42
42
|
type: "polyline" | "polygon" | "circle" | "text";
|
|
43
43
|
/** SVG path data for `polyline`/`polygon`. */
|
|
44
44
|
d?: string;
|
|
45
|
+
/** Intrinsic dash pattern carried by a stroked feature. Empty means solid. */
|
|
46
|
+
strokeDash?: number[];
|
|
45
47
|
/** Center for `circle`/`text`. */
|
|
46
48
|
cx?: number;
|
|
47
49
|
cy?: number;
|
package/dist/preview/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-
|
|
1
|
+
import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-1-LCyEFc.mjs";
|
|
2
2
|
//#region src/preview/index.ts
|
|
3
3
|
/** Side length (SVG units) of the repeating hatch tile in {@link PREVIEW_FILL_PATTERNS}. */
|
|
4
4
|
const PREVIEW_PATTERN_TILE = 8;
|
|
@@ -351,6 +351,7 @@ function collectShapes(g, tx, out, bboxArea, textLimits, props) {
|
|
|
351
351
|
const textStyle = labelProps.textStyle === "regular" || labelProps.textStyle === "italic" || labelProps.textStyle === "light" || labelProps.textStyle === "caps" ? labelProps.textStyle : void 0;
|
|
352
352
|
const styleProps = labelProps.style && typeof labelProps.style === "object" ? labelProps.style : {};
|
|
353
353
|
const fillPattern = PREVIEW_FILL_PATTERNS.some((p) => p.id === styleProps.fillPattern) ? styleProps.fillPattern : void 0;
|
|
354
|
+
const strokeDash = Array.isArray(styleProps.strokeDash) ? styleProps.strokeDash.filter((value) => typeof value === "number") : void 0;
|
|
354
355
|
const explicitlyFilled = typeof styleProps.fillColor === "string";
|
|
355
356
|
const polygonFilled = (ring) => bboxArea > 0 && ringArea(ring) / bboxArea < .25;
|
|
356
357
|
switch (g.type) {
|
|
@@ -391,13 +392,15 @@ function collectShapes(g, tx, out, bboxArea, textLimits, props) {
|
|
|
391
392
|
case "LineString":
|
|
392
393
|
out.push({
|
|
393
394
|
type: "polyline",
|
|
394
|
-
d: pathFromRing(g.coordinates, tx, false)
|
|
395
|
+
d: pathFromRing(g.coordinates, tx, false),
|
|
396
|
+
strokeDash
|
|
395
397
|
});
|
|
396
398
|
break;
|
|
397
399
|
case "MultiLineString":
|
|
398
400
|
g.coordinates.forEach((line) => out.push({
|
|
399
401
|
type: "polyline",
|
|
400
|
-
d: pathFromRing(line, tx, false)
|
|
402
|
+
d: pathFromRing(line, tx, false),
|
|
403
|
+
strokeDash
|
|
401
404
|
}));
|
|
402
405
|
break;
|
|
403
406
|
case "Polygon":
|
|
@@ -492,6 +492,7 @@ function createMidpointPerpendicularDrawRule(options) {
|
|
|
492
492
|
id: options.id,
|
|
493
493
|
minimumUserPoints: options.minimumUserPoints ?? 2,
|
|
494
494
|
minimumPreviewPoints: options.minimumPreviewPoints,
|
|
495
|
+
finishOnLastPointRepeat: options.finishOnLastPointRepeat,
|
|
495
496
|
canonicalPointCount: 3,
|
|
496
497
|
derive,
|
|
497
498
|
transform(event) {
|
|
@@ -830,7 +831,8 @@ const line24DrawRule = createMidpointPerpendicularDrawRule({
|
|
|
830
831
|
origin: "p2",
|
|
831
832
|
defaultDistanceRatio: .6,
|
|
832
833
|
minimumUserPoints: 3,
|
|
833
|
-
minimumPreviewPoints: 2
|
|
834
|
+
minimumPreviewPoints: 2,
|
|
835
|
+
finishOnLastPointRepeat: true
|
|
834
836
|
});
|
|
835
837
|
//#endregion
|
|
836
838
|
//#region src/draw-rules/line26.ts
|
|
@@ -9576,6 +9578,82 @@ const PHASE_LINE = defineControlMeasure({
|
|
|
9576
9578
|
}
|
|
9577
9579
|
});
|
|
9578
9580
|
//#endregion
|
|
9581
|
+
//#region src/generators/cm14-maneuver-lines/forward-edge-of-battle-area.ts
|
|
9582
|
+
/** Default options for the Forward edge of the battle area control measure. */
|
|
9583
|
+
const DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS = {
|
|
9584
|
+
includePrefix: true,
|
|
9585
|
+
smooth: false,
|
|
9586
|
+
smoothResolution: 12
|
|
9587
|
+
};
|
|
9588
|
+
const FORWARD_EDGE_OF_BATTLE_AREA_METADATA = {
|
|
9589
|
+
id: "forward-edge-of-battle-area",
|
|
9590
|
+
name: "Forward edge of the battle area",
|
|
9591
|
+
description: "The foremost limits of a series of areas in which ground combat units are deployed, excluding the areas in which covering or screening forces operate.",
|
|
9592
|
+
entity: "Maneuver Lines",
|
|
9593
|
+
entityType: "Forward Edge of Battle Area",
|
|
9594
|
+
value: "140400",
|
|
9595
|
+
minCoordinates: 2,
|
|
9596
|
+
geometry: "line",
|
|
9597
|
+
geometryTypes: ["LineString", "Point"],
|
|
9598
|
+
paints: {
|
|
9599
|
+
stroke: true,
|
|
9600
|
+
fill: "none",
|
|
9601
|
+
text: true
|
|
9602
|
+
},
|
|
9603
|
+
drawRule: "Line1",
|
|
9604
|
+
capturesLabelSize: true,
|
|
9605
|
+
params: [
|
|
9606
|
+
...SMOOTH_LINE_PARAMS,
|
|
9607
|
+
{
|
|
9608
|
+
key: "phaseLineName",
|
|
9609
|
+
label: "Phase line name",
|
|
9610
|
+
description: "Name the line as a phase line — rendered \"PL <name>\" beyond each end of the line.",
|
|
9611
|
+
type: "text",
|
|
9612
|
+
placeholder: "MOCHA",
|
|
9613
|
+
maxLength: 21,
|
|
9614
|
+
field: "T"
|
|
9615
|
+
},
|
|
9616
|
+
{
|
|
9617
|
+
key: "includePrefix",
|
|
9618
|
+
label: "Show PL prefix",
|
|
9619
|
+
description: "Prefix the phase line name with \"PL\" (or show the bare name).",
|
|
9620
|
+
type: "boolean",
|
|
9621
|
+
visibleWhen: (opts) => Boolean(String(opts.phaseLineName ?? "").trim())
|
|
9622
|
+
},
|
|
9623
|
+
{
|
|
9624
|
+
key: "labelPadding",
|
|
9625
|
+
label: "Label padding",
|
|
9626
|
+
description: "Extra clearance between the line and its labels, as a ratio of the label height",
|
|
9627
|
+
type: "number",
|
|
9628
|
+
min: 0,
|
|
9629
|
+
max: 2,
|
|
9630
|
+
step: .05
|
|
9631
|
+
}
|
|
9632
|
+
],
|
|
9633
|
+
textAmplifiers: [HOSTILE_LINE_AMPLIFIER]
|
|
9634
|
+
};
|
|
9635
|
+
/**
|
|
9636
|
+
* Creates a Forward edge of the battle area control measure: a polyline
|
|
9637
|
+
* through `positions` labeled "FEBA" above the line near each end.
|
|
9638
|
+
*/
|
|
9639
|
+
function createForwardEdgeOfBattleArea(positions, options = {}, textAmplifiers = {}) {
|
|
9640
|
+
return fixedLabelLineFeatures(positions, {
|
|
9641
|
+
part: "forward-edge-of-battle-area",
|
|
9642
|
+
placement: "above",
|
|
9643
|
+
...options
|
|
9644
|
+
}, "FEBA", textAmplifiers.N);
|
|
9645
|
+
}
|
|
9646
|
+
const FORWARD_EDGE_OF_BATTLE_AREA = defineControlMeasure({
|
|
9647
|
+
metadata: FORWARD_EDGE_OF_BATTLE_AREA_METADATA,
|
|
9648
|
+
generator: createForwardEdgeOfBattleArea,
|
|
9649
|
+
defaultOptions: DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS,
|
|
9650
|
+
rule: line1DrawRule,
|
|
9651
|
+
previewSample: {
|
|
9652
|
+
controlPoints: [[-1, 0], [1, 0]],
|
|
9653
|
+
options: { labelSize: 96 }
|
|
9654
|
+
}
|
|
9655
|
+
});
|
|
9656
|
+
//#endregion
|
|
9579
9657
|
//#region src/generators/cm14-maneuver-lines/handover-line.ts
|
|
9580
9658
|
/** Default options for the Handover line control measure. */
|
|
9581
9659
|
const DEFAULT_HANDOVER_LINE_OPTIONS = {
|
|
@@ -11481,6 +11559,103 @@ const PRINCIPAL_DIRECTION_OF_FIRE = defineControlMeasure({
|
|
|
11481
11559
|
] }
|
|
11482
11560
|
});
|
|
11483
11561
|
//#endregion
|
|
11562
|
+
//#region src/generators/cm14-maneuver-lines/secondaryDirectionOfFire.ts
|
|
11563
|
+
const DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS = { ...DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS };
|
|
11564
|
+
/** Dash and gap lengths used by the two fire-direction arms. */
|
|
11565
|
+
const SECONDARY_DIRECTION_OF_FIRE_DASH = [6, 4];
|
|
11566
|
+
const SECONDARY_DIRECTION_OF_FIRE_METADATA = {
|
|
11567
|
+
id: "secondary-direction-of-fire",
|
|
11568
|
+
name: "Secondary Direction of Fire",
|
|
11569
|
+
description: "A direction or sector, in addition to the principal direction, toward which a weapon or unit directs fire for a tactical purpose.",
|
|
11570
|
+
entity: "Maneuver Lines",
|
|
11571
|
+
entityType: "Field of Fire",
|
|
11572
|
+
entitySubtype: "Secondary Direction of Fire",
|
|
11573
|
+
value: "140504",
|
|
11574
|
+
minCoordinates: 2,
|
|
11575
|
+
maxCoordinates: 3,
|
|
11576
|
+
geometry: "line",
|
|
11577
|
+
geometryTypes: ["MultiLineString"],
|
|
11578
|
+
paints: {
|
|
11579
|
+
stroke: true,
|
|
11580
|
+
fill: "none",
|
|
11581
|
+
text: false
|
|
11582
|
+
},
|
|
11583
|
+
drawRule: "Line3",
|
|
11584
|
+
params: [{
|
|
11585
|
+
key: "arrowheadLengthRatio",
|
|
11586
|
+
label: "Arrowhead length",
|
|
11587
|
+
description: "Arrowhead length as a ratio of each arm's length",
|
|
11588
|
+
type: "number",
|
|
11589
|
+
min: .01,
|
|
11590
|
+
max: .5,
|
|
11591
|
+
step: .01
|
|
11592
|
+
}, {
|
|
11593
|
+
key: "arrowheadWidthRatio",
|
|
11594
|
+
label: "Arrowhead width",
|
|
11595
|
+
description: "Arrowhead base width as a multiple of the arrowhead length",
|
|
11596
|
+
type: "number",
|
|
11597
|
+
min: .05,
|
|
11598
|
+
max: 2,
|
|
11599
|
+
step: .01
|
|
11600
|
+
}]
|
|
11601
|
+
};
|
|
11602
|
+
/**
|
|
11603
|
+
* Creates the same V-shaped field-of-fire geometry as Principal Direction of
|
|
11604
|
+
* Fire, with dashed arms and solid open arrowheads.
|
|
11605
|
+
*
|
|
11606
|
+
* @param coordinates - [PT 1 (vertex), PT 2 (tip), PT 3 (tip)]
|
|
11607
|
+
* @param options - Arrowhead sizing parameters
|
|
11608
|
+
*/
|
|
11609
|
+
function createSecondaryDirectionOfFire(coordinates, options = {}) {
|
|
11610
|
+
const { arrowheadLengthRatio, arrowheadWidthRatio } = {
|
|
11611
|
+
...DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS,
|
|
11612
|
+
...options
|
|
11613
|
+
};
|
|
11614
|
+
const v = buildFieldOfFireV(coordinates, Math.max(0, arrowheadLengthRatio), Math.max(0, arrowheadWidthRatio));
|
|
11615
|
+
if (!v) return {
|
|
11616
|
+
type: "FeatureCollection",
|
|
11617
|
+
features: []
|
|
11618
|
+
};
|
|
11619
|
+
const unprojectLines = (lines) => lines.map((line) => line.map((coordinate) => unproject(coordinate[0], coordinate[1])));
|
|
11620
|
+
const arms = v.lines.filter((_, index) => index % 2 === 0);
|
|
11621
|
+
const arrowheads = v.lines.filter((_, index) => index % 2 === 1);
|
|
11622
|
+
return {
|
|
11623
|
+
type: "FeatureCollection",
|
|
11624
|
+
features: [{
|
|
11625
|
+
type: "Feature",
|
|
11626
|
+
properties: {
|
|
11627
|
+
part: "arms",
|
|
11628
|
+
style: { strokeDash: [...SECONDARY_DIRECTION_OF_FIRE_DASH] }
|
|
11629
|
+
},
|
|
11630
|
+
geometry: {
|
|
11631
|
+
type: "MultiLineString",
|
|
11632
|
+
coordinates: unprojectLines(arms)
|
|
11633
|
+
}
|
|
11634
|
+
}, {
|
|
11635
|
+
type: "Feature",
|
|
11636
|
+
properties: {
|
|
11637
|
+
part: "arrowheads",
|
|
11638
|
+
style: { strokeDash: [] }
|
|
11639
|
+
},
|
|
11640
|
+
geometry: {
|
|
11641
|
+
type: "MultiLineString",
|
|
11642
|
+
coordinates: unprojectLines(arrowheads)
|
|
11643
|
+
}
|
|
11644
|
+
}]
|
|
11645
|
+
};
|
|
11646
|
+
}
|
|
11647
|
+
const SECONDARY_DIRECTION_OF_FIRE = defineControlMeasure({
|
|
11648
|
+
metadata: SECONDARY_DIRECTION_OF_FIRE_METADATA,
|
|
11649
|
+
generator: createSecondaryDirectionOfFire,
|
|
11650
|
+
defaultOptions: DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS,
|
|
11651
|
+
rule: line3DrawRule,
|
|
11652
|
+
previewSample: { controlPoints: [
|
|
11653
|
+
[0, -.6],
|
|
11654
|
+
[-1, .4],
|
|
11655
|
+
[1, .4]
|
|
11656
|
+
] }
|
|
11657
|
+
});
|
|
11658
|
+
//#endregion
|
|
11484
11659
|
//#region src/generators/cm15-maneuver-areas/strongPoint.ts
|
|
11485
11660
|
const DEFAULT_SMOOTH_RESOLUTION = 16;
|
|
11486
11661
|
/** Default options for the Strong Point control measure. */
|
|
@@ -12135,6 +12310,7 @@ const DEFINITIONS = {
|
|
|
12135
12310
|
"direction-of-main-attack": DIRECTION_OF_MAIN_ATTACK,
|
|
12136
12311
|
"direction-of-supporting-attack": DIRECTION_OF_SUPPORTING_ATTACK,
|
|
12137
12312
|
"principal-direction-of-fire": PRINCIPAL_DIRECTION_OF_FIRE,
|
|
12313
|
+
"secondary-direction-of-fire": SECONDARY_DIRECTION_OF_FIRE,
|
|
12138
12314
|
"final-protective-fire-left": FINAL_PROTECTIVE_FIRE_LEFT,
|
|
12139
12315
|
"final-protective-fire-right": FINAL_PROTECTIVE_FIRE_RIGHT,
|
|
12140
12316
|
"search-area": SEARCH_AREA,
|
|
@@ -12176,6 +12352,7 @@ const DEFINITIONS = {
|
|
|
12176
12352
|
"attack-by-fire": ATTACK_BY_FIRE,
|
|
12177
12353
|
flot: FLOT,
|
|
12178
12354
|
"phase-line": PHASE_LINE,
|
|
12355
|
+
"forward-edge-of-battle-area": FORWARD_EDGE_OF_BATTLE_AREA,
|
|
12179
12356
|
"handover-line": HANDOVER_LINE,
|
|
12180
12357
|
"battle-handover-line": BATTLE_HANDOVER_LINE,
|
|
12181
12358
|
"block-mission-task": BLOCK_MISSION_TASK,
|
|
@@ -12584,4 +12761,4 @@ function assertNever(value) {
|
|
|
12584
12761
|
throw new Error(`Unhandled control measure kind: ${String(value)}`);
|
|
12585
12762
|
}
|
|
12586
12763
|
//#endregion
|
|
12587
|
-
export {
|
|
12764
|
+
export { DEFAULT_GENERIC_C2_LINE_OPTIONS as $, DEFAULT_HANDOVER_LINE_OPTIONS as A, ambushDrawRule as At, DEFAULT_COVER_OPTIONS as B, snapToMidpointPerpendicular as Bt, DEFAULT_LANDING_ZONE_OPTIONS as C, axis1DrawRule as Ct, DEFAULT_FORTIFIED_AREA_OPTIONS as D, line23DrawRule as Dt, DEFAULT_FRONTAL_ATTACK_OPTIONS as E, line24DrawRule as Et, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as F, blockDrawRule as Ft, DEFAULT_GENERIC_POLYGON_OPTIONS as G, project as Gt, DEFAULT_CLEAR_OPTIONS as H, calculateMetrics as Ht, DEFAULT_ENCIRCLEMENT_OPTIONS as I, computeDefaultMidpointPerpendicularPoint as It, DEFAULT_CLASSIC_ARROW_OPTIONS as J, getMetersPerPixel as Jt, DEFAULT_GENERIC_LINE_OPTIONS as K, unproject as Kt, DEFAULT_DISRUPT_OPTIONS as L, createMidpointPerpendicularDrawRule as Lt, DEFAULT_PHASE_LINE_OPTIONS as M, point12DrawRule as Mt, DEFAULT_FLOT_OPTIONS as N, centerRadiusDrawRule as Nt, DEFAULT_FORTIFIED_LINE_OPTIONS as O, turnDrawRule as Ot, DEFAULT_FIX_OPTIONS as P, disruptDrawRule as Pt, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as Q, DEFAULT_GUARD_OPTIONS as R, getMidpointPerpendicularSignedDistance as Rt, DEFAULT_MAIN_ATTACK_OPTIONS as S, rectangleDrawRule as St, DEFAULT_SCREEN_OPTIONS as T, line26DrawRule as Tt, DEFAULT_GENERIC_TEXT_OPTIONS as U, computeInitialWidthPoint as Ut, DEFAULT_TACTICAL_ARROW_OPTIONS as V, createBaselineFrame as Vt, DEFAULT_GENERIC_RECTANGLE_OPTIONS as W, haversineDistance as Wt, DEFAULT_BYPASS_OPTIONS as X, DEFAULT_CANALIZE_OPTIONS as Y, roundToFixed as Yt, DEFAULT_BREACH_OPTIONS as Z, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as _, canonicalTextAmplifierKey as _t, DEFINITIONS as a, DEFAULT_BATTLE_POSITION_OPTIONS as at, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as b, DEFAULT_AMBUSH_OPTIONS as bt, getDefaultOptions as c, DEFAULT_ANTITANK_WALL_OPTIONS as ct, DEFAULT_TURN_OPTIONS as d, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as dt, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as et, DEFAULT_SUPPORTING_ATTACK_OPTIONS as f, DEFAULT_AREA_DEFENSE_OPTIONS as ft, SECONDARY_DIRECTION_OF_FIRE_DASH as g, TEXT_AMPLIFIER_FIELDS as gt, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS as h, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as ht, CONTROL_MEASURE_METADATA as i, DEFAULT_BLOCK_OPTIONS as it, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS as j, attackByFireDrawRule as jt, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as k, line1DrawRule as kt, listControlMeasureMetadata as l, DEFAULT_ANTITANK_DITCH_OPTIONS as lt, DEFAULT_STRONG_POINT_OPTIONS as m, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as mt, resolveStyleHints as n, DEFAULT_BOUNDARY_OPTIONS as nt, getControlMeasureMetadata as o, DEFAULT_ATTACK_HELICOPTER_OPTIONS as ot, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as p, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as pt, DEFAULT_GENERIC_CIRCLE_OPTIONS as q, EPSILON as qt, CONTROL_MEASURE_IDS as r, DEFAULT_BLOCK_ARROW_OPTIONS as rt, getControlMeasureMetadataByValue as s, DEFAULT_ATTACK_BY_FIRE_OPTIONS as st, renderControlMeasure as t, DEFAULT_LIGHT_LINE_OPTIONS as tt, DEFAULT_TURNING_MOVEMENT_OPTIONS as u, DEFAULT_ASSEMBLY_AREA_OPTIONS as ut, DEFAULT_PICKUP_ZONE_OPTIONS as v, normalizeTextAmplifiers as vt, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as w, supportByFireDrawRule as wt, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as x, DEFAULT_AIRBORNE_ATTACK_OPTIONS as xt, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as y, resolveAmplifierPlacement as yt, DEFAULT_DELAY_OPTIONS as z, pointOnMidpointPerpendicularAxis as zt };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Forward edge of the battle area"><rect x="0" y="0" width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 26.22 L91.00 26.22" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><g transform="rotate(0.000 7.227 21.777)"><text x="7.227399999999998" y="21.7769" fill="#1e293b" font-family="sans-serif" font-size="7.416457060725835" font-weight="600" text-anchor="start" dominant-baseline="central">FEBA</text></g><g transform="rotate(0.000 88.773 21.777)"><text x="88.7726" y="21.7769" fill="#1e293b" font-family="sans-serif" font-size="7.416457060725835" font-weight="600" text-anchor="end" dominant-baseline="central">FEBA</text></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Secondary Direction of Fire"><rect x="0" y="0" width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M48.00 43.00 L10.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-dasharray="6 4" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.00 43.00 L86.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-dasharray="6 4" stroke-linejoin="round" stroke-linecap="round"/><path d="M10.87 9.44 L10.00 5.00 L14.45 5.88" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M81.55 5.88 L86.00 5.00 L85.13 9.44" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orbat-mapper/control-measures",
|
|
3
|
-
"version": "0.2.0-alpha.
|
|
3
|
+
"version": "0.2.0-alpha.32",
|
|
4
4
|
"description": "Library for drawing tactical graphics and control measures according to MIL-STD-2525 and APP-6 standards.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Orbat Mapper",
|