@geoscene/core 4.34.11 → 4.34.12
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 +25 -25
- package/WebLinkChart.js +1 -1
- package/assets/geoscene/css/main.scss +1 -1
- package/assets/geoscene/css/view.scss +1 -1
- package/assets/geoscene/themes/base/_colorVariables.scss +1 -1
- package/assets/geoscene/themes/base/_core.scss +1 -1
- package/assets/geoscene/themes/base/_functions.scss +23 -23
- package/assets/geoscene/themes/base/_layout.scss +11 -11
- package/assets/geoscene/themes/base/_sizes.scss +130 -130
- package/assets/geoscene/themes/base/_type.scss +25 -25
- package/assets/geoscene/themes/base/colors/css/brand_colors.css +76 -76
- package/assets/geoscene/themes/base/colors/css/calcite_core_colors.css +169 -169
- package/assets/geoscene/themes/base/colors/css/calcite_core_colors_dark.css +169 -169
- package/assets/geoscene/themes/base/colors/css/calcite_gray_colors.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_gray_colors_dark.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_highlight_colors.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_highlight_colors_dark.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_vibrant_colors.css +67 -67
- package/assets/geoscene/themes/base/colors/css/calcite_vibrant_colors_dark.css +67 -67
- package/assets/geoscene/themes/base/colors/css/complete.css +610 -610
- package/assets/geoscene/themes/base/colors/css/scss/calcite_core_colors_dark.scss +285 -285
- package/assets/geoscene/themes/base/colors/css/scss/calcite_gray_colors_dark.scss +91 -91
- package/assets/geoscene/themes/base/colors/css/scss/calcite_highlight_colors_dark.scss +64 -64
- package/assets/geoscene/themes/base/colors/css/scss/calcite_vibrant_colors_dark.scss +124 -124
- package/assets/geoscene/themes/base/colors/css/scss/complete.scss +11 -11
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_core_colors_dark.css +673 -673
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_gray_colors_dark.css +169 -169
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_highlight_colors_dark.css +169 -169
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_vibrant_colors_dark.css +265 -265
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_core_colors_dark.scss +964 -964
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_gray_colors_dark.scss +263 -263
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_highlight_colors_dark.scss +234 -234
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_vibrant_colors_dark.scss +347 -347
- package/assets/geoscene/themes/base/colors/patterns_json/scss/complete.scss +11 -11
- package/assets/geoscene/themes/base/fonts/cdn.scss +2 -2
- package/assets/geoscene/themes/base/icons/fonts/CalciteWebCoreIcons.svg +196 -196
- package/assets/geoscene/themes/base/widgets/_AreaMeasurement2D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_AreaMeasurement3D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_DirectLineMeasurement3D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_DistanceMeasurement2D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_Measurement.scss +7 -7
- package/assets/geoscene/themes/light/view.scss +9 -9
- package/assets/geoscene/views/3d/analysis/images/heading-rotate.ts.svg +10 -10
- package/assets/geoscene/views/3d/analysis/images/tilt-rotate.ts.svg +11 -11
- package/assets/geoscene/views/3d/webgl-engine/lib/intersectorUtils.svg +117 -117
- package/assets/geoscene/views/magnifier/mask.ts.svg +5 -5
- package/assets/geoscene/views/magnifier/overlay.ts.svg +36 -36
- package/geometry/operators/graphicBufferOperator.d.ts +4 -4
- package/identity/IdentityModal.js +1 -1
- package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
- package/package.json +1 -1
- package/portal/schemas/definitions.js +1 -1
- package/support/actions/actionUtils.js +1 -1
- package/views/interactive/tooltip/components/DrawHeaderActions.js +1 -1
- package/views/interactive/tooltip/components/TooltipEditableField.js +1 -1
- package/views/interactive/tooltip/content/TooltipContent.js +1 -1
- package/widgets/Attachments.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/BasemapLayerList.js +1 -1
- package/widgets/BasemapToggle/BasemapToggleViewModel.js +1 -1
- package/widgets/BasemapToggle.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/Bookmarks.js +1 -1
- package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesNode.js +1 -1
- package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesTree.js +1 -1
- package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
- package/widgets/BuildingExplorer/BuildingLevelPicker/Label.js +1 -1
- package/widgets/BuildingExplorer/BuildingPhasePicker/BuildingPhasePicker.js +1 -1
- package/widgets/BuildingExplorer.js +1 -1
- package/widgets/CatalogLayerList.js +1 -1
- package/widgets/Compass.js +1 -1
- package/widgets/CoordinateConversion.js +1 -1
- package/widgets/Daylight.js +1 -1
- package/widgets/DirectionalPad.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/Editor/components/FeatureList.js +1 -1
- package/widgets/Editor/components/FooterActions.js +1 -1
- package/widgets/Editor/components/MergeFeaturesList.js +1 -1
- package/widgets/Editor/components/Notices.js +1 -1
- package/widgets/Editor/components/PanelContent.js +1 -1
- package/widgets/Editor/components/PendingFeatureList.js +1 -1
- package/widgets/Editor/components/Prompt.js +1 -1
- package/widgets/Editor/components/Settings.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/Editor/components/UploadDetails.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/ElevationProfile/components/LegendItem.js +1 -1
- package/widgets/ElevationProfile/components/SettingsButton.js +1 -1
- package/widgets/ElevationProfile/components/Statistics.js +1 -1
- package/widgets/ElevationProfile.js +1 -1
- package/widgets/Expand.js +1 -1
- package/widgets/Feature/FeatureExpression.js +1 -1
- package/widgets/Feature/FeatureMedia.js +1 -1
- package/widgets/Feature/FeatureRelationship.js +1 -1
- package/widgets/Feature/FeatureUtilityNetworkAssociationList.js +1 -1
- package/widgets/Feature/FeatureUtilityNetworkAssociations.js +1 -1
- package/widgets/Feature.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/support/tableUtils.js +1 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/FeatureTemplates.js +1 -1
- package/widgets/Features/FeaturesDrillIn.js +1 -1
- package/widgets/Features.js +1 -1
- package/widgets/FloorFilter.js +1 -1
- package/widgets/Fullscreen.js +1 -1
- package/widgets/Home.js +1 -1
- package/widgets/LayerList/LayerListItem.js +1 -1
- package/widgets/LayerList.js +1 -1
- package/widgets/Legend/styles/card/CardView.js +1 -1
- package/widgets/LineOfSight.js +1 -1
- package/widgets/Locate.js +1 -1
- package/widgets/NavigationToggle.js +1 -1
- package/widgets/OrientedImageryViewer/components/Alert.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageLocationWidget.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageMeasurementWidget.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageOverlays.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageViewer.js +1 -1
- package/widgets/OrientedImageryViewer/components/NavigationActions.js +1 -1
- package/widgets/OrientedImageryViewer/components/NavigationSettings.js +1 -1
- package/widgets/OrientedImageryViewer/components/NavigationUI360.js +1 -1
- package/widgets/OrientedImageryViewer/components/SequentialNavigationUI.js +1 -1
- package/widgets/OrientedImageryViewer/components/SketchTools.js +1 -1
- package/widgets/OrientedImageryViewer/components/VideoEnhancementTools.js +1 -1
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/PanoramicVideoViewer.js +1 -1
- package/widgets/PanoramicViewer.js +1 -1
- package/widgets/Print.js +1 -1
- package/widgets/ScaleRangeSlider.js +1 -1
- package/widgets/Search/SearchResultRenderer.js +1 -1
- package/widgets/Search.js +1 -1
- package/widgets/ShadowCast/components/DiscreteConfigurator.js +1 -1
- package/widgets/ShadowCast/components/DurationConfigurator.js +1 -1
- package/widgets/ShadowCast/components/ThresholdConfigurator.js +1 -1
- package/widgets/ShadowCast.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/OverflowGroup.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/SplitButton.js +1 -1
- package/widgets/Sketch.js +1 -1
- package/widgets/Slice.js +1 -1
- package/widgets/TableList.js +1 -1
- package/widgets/TimeSlider.js +1 -1
- package/widgets/TimeZoneLabel.js +1 -1
- package/widgets/Track.js +1 -1
- package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsLineSymbolPicker.js +1 -1
- package/widgets/UtilityNetworkAssociations.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeaturesDrillIn.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/UtilityNetworkValidateTopology.js +1 -1
- package/widgets/ValuePicker/ValuePickerCombobox.js +1 -1
- package/widgets/ValuePicker/ValuePickerSlider.js +1 -1
- package/widgets/ValuePicker.js +1 -1
- package/widgets/VideoPlayer/components/MetadataSection.js +1 -1
- package/widgets/VideoPlayer/components/PlayerActionsGroup.js +1 -1
- package/widgets/VideoPlayer/components/PlayerControlsGroup.js +1 -1
- package/widgets/VideoPlayer/components/SettingsButton.js +1 -1
- package/widgets/VideoPlayer.js +1 -1
- package/widgets/Weather/LabeledSlider.js +1 -1
- package/widgets/Weather.js +1 -1
- package/widgets/Zoom.js +1 -1
- package/widgets/support/ColorPicker.js +1 -1
- package/widgets/support/FilterBuilder.js +1 -1
- package/widgets/support/FilterCondition.js +1 -1
- package/widgets/support/GridControls.js +1 -1
- package/widgets/support/LabeledSwitch.js +1 -1
- package/widgets/support/MeasurementWidgetContent.js +1 -1
- package/widgets/support/SelectionList.js +1 -1
- package/widgets/support/SelectionToolbar.js +1 -1
- package/widgets/support/SketchTooltipControls.js +1 -1
- package/widgets/support/SnappingControls.js +1 -1
- package/widgets/support/TimezonePicker.js +1 -1
- package/widgets/support/UnitSelect.js +1 -1
- package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationList.js +1 -1
- package/widgets/support/componentsUtils.js +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
-
@mixin areaMeasurement2D() {
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
@if $include_AreaMeasurement2D == true {
|
|
6
|
-
@include areaMeasurement2D();
|
|
7
|
-
}
|
|
1
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
+
@mixin areaMeasurement2D() {
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
@if $include_AreaMeasurement2D == true {
|
|
6
|
+
@include areaMeasurement2D();
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
-
@mixin areaMeasurement3D() {
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
@if $include_AreaMeasurement3D == true {
|
|
6
|
-
@include areaMeasurement3D();
|
|
7
|
-
}
|
|
1
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
+
@mixin areaMeasurement3D() {
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
@if $include_AreaMeasurement3D == true {
|
|
6
|
+
@include areaMeasurement3D();
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
-
@mixin directLineMeasurement3D() {
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
@if $include_DirectLineMeasurement3D == true {
|
|
6
|
-
@include directLineMeasurement3D();
|
|
7
|
-
}
|
|
1
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
+
@mixin directLineMeasurement3D() {
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
@if $include_DirectLineMeasurement3D == true {
|
|
6
|
+
@include directLineMeasurement3D();
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
-
@mixin distanceMeasurement2D() {
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
@if $include_DistanceMeasurement2D == true {
|
|
6
|
-
@include distanceMeasurement2D();
|
|
7
|
-
}
|
|
1
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
+
@mixin distanceMeasurement2D() {
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
@if $include_DistanceMeasurement2D == true {
|
|
6
|
+
@include distanceMeasurement2D();
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
-
@mixin measurement() {
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
@if $include_Measurement == true {
|
|
6
|
-
@include measurement();
|
|
7
|
-
}
|
|
1
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
2
|
+
@mixin measurement() {
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
@if $include_Measurement == true {
|
|
6
|
+
@include measurement();
|
|
7
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
/*
|
|
2
|
-
Theme: Light (Default)
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
$include_BasemapToggle: false;
|
|
6
|
-
$include_Legend: false;
|
|
7
|
-
$include_Search: false;
|
|
8
|
-
|
|
9
|
-
@import "../base/core";
|
|
1
|
+
/*
|
|
2
|
+
Theme: Light (Default)
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
$include_BasemapToggle: false;
|
|
6
|
+
$include_Legend: false;
|
|
7
|
+
$include_Search: false;
|
|
8
|
+
|
|
9
|
+
@import "../base/core";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<svg width="56" height="56" fill="none" version="2.0" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
-
<style id="theme-style">.contrast-fill { fill:#fff; }
|
|
4
|
-
.contrast-stroke { stroke:#ffffff; }
|
|
5
|
-
.accent-fill { fill:#FF7F00; fill-opacity:0.5; }
|
|
6
|
-
.accent-stroke { stroke:#FF7F00; stroke-opacity:0.5; }</style>
|
|
7
|
-
<path class="accent-fill" d="m28 0a28 28 0 1 1 0 56 28 28 0 0 1 0-56z"/>
|
|
8
|
-
<path class="contrast-stroke" d="m20.05 40.86a15.05 15.05 0 0 0 17.14-1.5 15.05 15.05 0 0 0 4.47-16.65 15.05 15.05 0 0 0-22.72-7.15 15.05 15.05 0 0 0-5.5 7.15" stroke-width="4.99"/>
|
|
9
|
-
<path class="contrast-fill" d="m10.97 35.57 5.38 12.07 7.79-13.47-13.17 1.4z"/>
|
|
10
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg width="56" height="56" fill="none" version="2.0" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<style id="theme-style">.contrast-fill { fill:#fff; }
|
|
4
|
+
.contrast-stroke { stroke:#ffffff; }
|
|
5
|
+
.accent-fill { fill:#FF7F00; fill-opacity:0.5; }
|
|
6
|
+
.accent-stroke { stroke:#FF7F00; stroke-opacity:0.5; }</style>
|
|
7
|
+
<path class="accent-fill" d="m28 0a28 28 0 1 1 0 56 28 28 0 0 1 0-56z"/>
|
|
8
|
+
<path class="contrast-stroke" d="m20.05 40.86a15.05 15.05 0 0 0 17.14-1.5 15.05 15.05 0 0 0 4.47-16.65 15.05 15.05 0 0 0-22.72-7.15 15.05 15.05 0 0 0-5.5 7.15" stroke-width="4.99"/>
|
|
9
|
+
<path class="contrast-fill" d="m10.97 35.57 5.38 12.07 7.79-13.47-13.17 1.4z"/>
|
|
10
|
+
</svg>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<svg width="56" height="56" fill="none" version="2.0" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
-
<style id="theme-style">.contrast-fill { fill:#fff; }
|
|
4
|
-
.contrast-stroke { stroke:#ffffff; }
|
|
5
|
-
.accent-fill { fill:#FF7F00; fill-opacity:0.5; }
|
|
6
|
-
.accent-stroke { stroke:#FF7F00; stroke-opacity:0.5; }</style>
|
|
7
|
-
<circle class="accent-fill" transform="rotate(40.542)" cx="39.478" cy="3.078" r="28"/>
|
|
8
|
-
<path class="contrast-stroke" d="m7.074 30.053 29.397 11.985-3.6731-33.493" fill="none" stroke-width="5"/>
|
|
9
|
-
<path class="contrast-stroke contrast-fill" d="m24.504 23.207a11.982 11.982 0 0 0-9.8003 7.507" fill="none" stroke-width="2.9962"/>
|
|
10
|
-
<path class="contrast-fill" d="m29.818 22.808-6.1843 4.5994-0.54071-8.3632z"/>
|
|
11
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg width="56" height="56" fill="none" version="2.0" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<style id="theme-style">.contrast-fill { fill:#fff; }
|
|
4
|
+
.contrast-stroke { stroke:#ffffff; }
|
|
5
|
+
.accent-fill { fill:#FF7F00; fill-opacity:0.5; }
|
|
6
|
+
.accent-stroke { stroke:#FF7F00; stroke-opacity:0.5; }</style>
|
|
7
|
+
<circle class="accent-fill" transform="rotate(40.542)" cx="39.478" cy="3.078" r="28"/>
|
|
8
|
+
<path class="contrast-stroke" d="m7.074 30.053 29.397 11.985-3.6731-33.493" fill="none" stroke-width="5"/>
|
|
9
|
+
<path class="contrast-stroke contrast-fill" d="m24.504 23.207a11.982 11.982 0 0 0-9.8003 7.507" fill="none" stroke-width="2.9962"/>
|
|
10
|
+
<path class="contrast-fill" d="m29.818 22.808-6.1843 4.5994-0.54071-8.3632z"/>
|
|
11
|
+
</svg>
|
|
@@ -1,117 +1,117 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
-
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
5
|
-
width="358.131px" height="205.837px" viewBox="0 0 358.131 205.837" enable-background="new 0 0 358.131 205.837"
|
|
6
|
-
xml:space="preserve">
|
|
7
|
-
<circle fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" cx="215.758" cy="120.717" r="66.667"/>
|
|
8
|
-
<text transform="matrix(1 0 0 1 281.7227 155.3633)" font-family="'MyriadPro-Regular'" font-size="6">earth radius</text>
|
|
9
|
-
<text transform="matrix(1 0 0 1 189.9106 104.9185)" font-family="'MyriadPro-Regular'" font-size="6">world z</text>
|
|
10
|
-
<g>
|
|
11
|
-
<g>
|
|
12
|
-
<g>
|
|
13
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="215.757" y1="120.717" x2="215.757" y2="104.72"/>
|
|
14
|
-
<g>
|
|
15
|
-
<polygon points="218.236,105.449 215.744,101.131 213.25,105.449 "/>
|
|
16
|
-
</g>
|
|
17
|
-
</g>
|
|
18
|
-
</g>
|
|
19
|
-
<circle stroke="#000000" stroke-miterlimit="10" cx="215.757" cy="119.157" r="1.56"/>
|
|
20
|
-
<g>
|
|
21
|
-
<g>
|
|
22
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="217.317" y1="119.157" x2="230.652" y2="119.157"/>
|
|
23
|
-
<g>
|
|
24
|
-
<polygon points="229.922,121.636 234.24,119.144 229.922,116.65 "/>
|
|
25
|
-
</g>
|
|
26
|
-
</g>
|
|
27
|
-
</g>
|
|
28
|
-
</g>
|
|
29
|
-
<text transform="matrix(1 0 0 1 240.1548 120.7173)" font-family="'MyriadPro-Regular'" font-size="6">world x</text>
|
|
30
|
-
<g>
|
|
31
|
-
|
|
32
|
-
<rect x="271.779" y="49.442" transform="matrix(0.7071 0.7071 -0.7071 0.7071 129.4706 -189.1521)" fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" width="42.565" height="24.534"/>
|
|
33
|
-
<g>
|
|
34
|
-
<g>
|
|
35
|
-
<g>
|
|
36
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="291.736" y1="62.65" x2="303.048" y2="51.338"/>
|
|
37
|
-
<g>
|
|
38
|
-
<polygon points="304.285,53.607 305.575,48.792 300.759,50.082 "/>
|
|
39
|
-
</g>
|
|
40
|
-
</g>
|
|
41
|
-
</g>
|
|
42
|
-
<circle stroke="#000000" stroke-miterlimit="10" cx="292.839" cy="61.547" r="1.56"/>
|
|
43
|
-
<g>
|
|
44
|
-
<g>
|
|
45
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="293.942" y1="62.65" x2="303.371" y2="72.079"/>
|
|
46
|
-
<g>
|
|
47
|
-
<polygon points="301.102,73.316 305.917,74.606 304.627,69.791 "/>
|
|
48
|
-
</g>
|
|
49
|
-
</g>
|
|
50
|
-
</g>
|
|
51
|
-
</g>
|
|
52
|
-
</g>
|
|
53
|
-
<text transform="matrix(1 0 0 1 308.4932 85.4316)" font-family="'MyriadPro-Regular'" font-size="6">i3s component</text>
|
|
54
|
-
<g>
|
|
55
|
-
<rect x="194.475" y="15.922" fill="#FFFFFF" width="42.565" height="24.534"/>
|
|
56
|
-
<g>
|
|
57
|
-
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="237.04,38.956 237.04,40.456 235.54,40.456 "/>
|
|
58
|
-
|
|
59
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0435,3.0435" x1="232.496" y1="40.456" x2="197.497" y2="40.456"/>
|
|
60
|
-
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="195.975,40.456 194.475,40.456 194.475,38.956 "/>
|
|
61
|
-
|
|
62
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0762,3.0762" x1="194.475" y1="35.88" x2="194.475" y2="18.96"/>
|
|
63
|
-
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="194.475,17.422 194.475,15.922 195.975,15.922 "/>
|
|
64
|
-
|
|
65
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0435,3.0435" x1="199.018" y1="15.922" x2="234.018" y2="15.922"/>
|
|
66
|
-
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="235.54,15.922 237.04,15.922 237.04,17.422 "/>
|
|
67
|
-
|
|
68
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0762,3.0762" x1="237.04" y1="20.499" x2="237.04" y2="37.418"/>
|
|
69
|
-
</g>
|
|
70
|
-
</g>
|
|
71
|
-
<g>
|
|
72
|
-
<g>
|
|
73
|
-
<g>
|
|
74
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="215.485" y1="29.792" x2="215.485" y2="13.795"/>
|
|
75
|
-
<g>
|
|
76
|
-
<polygon points="217.964,14.525 215.472,10.207 212.979,14.524 "/>
|
|
77
|
-
</g>
|
|
78
|
-
</g>
|
|
79
|
-
</g>
|
|
80
|
-
<circle stroke="#000000" stroke-miterlimit="10" cx="215.485" cy="28.233" r="1.56"/>
|
|
81
|
-
<g>
|
|
82
|
-
<g>
|
|
83
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="217.045" y1="28.233" x2="230.379" y2="28.233"/>
|
|
84
|
-
<g>
|
|
85
|
-
<polygon points="229.65,30.712 233.967,28.219 229.65,25.726 "/>
|
|
86
|
-
</g>
|
|
87
|
-
</g>
|
|
88
|
-
</g>
|
|
89
|
-
</g>
|
|
90
|
-
<text transform="matrix(0.9982 0 0 1 7.3267 20.6519)"><tspan x="0" y="0" fill="#ED1C24" font-family="'MyriadPro-Regular'" font-size="6">transformation at which global offsets are computed is not the true</tspan><tspan x="0" y="7.2" fill="#ED1C24" font-family="'MyriadPro-Regular'" font-size="6">i3s world transformation. The component is moved along world z to</tspan><tspan x="0" y="14.4" fill="#ED1C24" font-family="'MyriadPro-Regular'" font-size="6">the right elevation of the components local origin.</tspan></text>
|
|
91
|
-
<g>
|
|
92
|
-
<g>
|
|
93
|
-
<line fill="none" stroke="#ED1C24" stroke-miterlimit="10" x1="179.261" y1="26.672" x2="186.314" y2="26.672"/>
|
|
94
|
-
<g>
|
|
95
|
-
<polygon fill="#ED1C24" points="185.584,29.151 189.902,26.658 185.584,24.165 "/>
|
|
96
|
-
</g>
|
|
97
|
-
</g>
|
|
98
|
-
</g>
|
|
99
|
-
<text transform="matrix(1 0 0 1 167.3262 44.271)" font-family="'MyriadPro-Regular'" font-size="6">world min</text>
|
|
100
|
-
<text transform="matrix(1 0 0 1 240.1548 16.7446)" font-family="'MyriadPro-Regular'" font-size="6">world max</text>
|
|
101
|
-
<g>
|
|
102
|
-
<g opacity="0.49">
|
|
103
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="188.933" y1="20" x2="189.18" y2="20.969"/>
|
|
104
|
-
|
|
105
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="1.9672,1.9672" x1="189.666" y1="22.875" x2="213.707" y2="117.235"/>
|
|
106
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="213.95" y1="118.188" x2="214.197" y2="119.157"/>
|
|
107
|
-
</g>
|
|
108
|
-
</g>
|
|
109
|
-
<g>
|
|
110
|
-
<g opacity="0.48">
|
|
111
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="240.155" y1="0.945" x2="239.953" y2="1.925"/>
|
|
112
|
-
|
|
113
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="2.0119,2.0119" x1="239.546" y1="3.895" x2="216.163" y2="117.193"/>
|
|
114
|
-
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="215.959" y1="118.178" x2="215.757" y2="119.157"/>
|
|
115
|
-
</g>
|
|
116
|
-
</g>
|
|
117
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
5
|
+
width="358.131px" height="205.837px" viewBox="0 0 358.131 205.837" enable-background="new 0 0 358.131 205.837"
|
|
6
|
+
xml:space="preserve">
|
|
7
|
+
<circle fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" cx="215.758" cy="120.717" r="66.667"/>
|
|
8
|
+
<text transform="matrix(1 0 0 1 281.7227 155.3633)" font-family="'MyriadPro-Regular'" font-size="6">earth radius</text>
|
|
9
|
+
<text transform="matrix(1 0 0 1 189.9106 104.9185)" font-family="'MyriadPro-Regular'" font-size="6">world z</text>
|
|
10
|
+
<g>
|
|
11
|
+
<g>
|
|
12
|
+
<g>
|
|
13
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="215.757" y1="120.717" x2="215.757" y2="104.72"/>
|
|
14
|
+
<g>
|
|
15
|
+
<polygon points="218.236,105.449 215.744,101.131 213.25,105.449 "/>
|
|
16
|
+
</g>
|
|
17
|
+
</g>
|
|
18
|
+
</g>
|
|
19
|
+
<circle stroke="#000000" stroke-miterlimit="10" cx="215.757" cy="119.157" r="1.56"/>
|
|
20
|
+
<g>
|
|
21
|
+
<g>
|
|
22
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="217.317" y1="119.157" x2="230.652" y2="119.157"/>
|
|
23
|
+
<g>
|
|
24
|
+
<polygon points="229.922,121.636 234.24,119.144 229.922,116.65 "/>
|
|
25
|
+
</g>
|
|
26
|
+
</g>
|
|
27
|
+
</g>
|
|
28
|
+
</g>
|
|
29
|
+
<text transform="matrix(1 0 0 1 240.1548 120.7173)" font-family="'MyriadPro-Regular'" font-size="6">world x</text>
|
|
30
|
+
<g>
|
|
31
|
+
|
|
32
|
+
<rect x="271.779" y="49.442" transform="matrix(0.7071 0.7071 -0.7071 0.7071 129.4706 -189.1521)" fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" width="42.565" height="24.534"/>
|
|
33
|
+
<g>
|
|
34
|
+
<g>
|
|
35
|
+
<g>
|
|
36
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="291.736" y1="62.65" x2="303.048" y2="51.338"/>
|
|
37
|
+
<g>
|
|
38
|
+
<polygon points="304.285,53.607 305.575,48.792 300.759,50.082 "/>
|
|
39
|
+
</g>
|
|
40
|
+
</g>
|
|
41
|
+
</g>
|
|
42
|
+
<circle stroke="#000000" stroke-miterlimit="10" cx="292.839" cy="61.547" r="1.56"/>
|
|
43
|
+
<g>
|
|
44
|
+
<g>
|
|
45
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="293.942" y1="62.65" x2="303.371" y2="72.079"/>
|
|
46
|
+
<g>
|
|
47
|
+
<polygon points="301.102,73.316 305.917,74.606 304.627,69.791 "/>
|
|
48
|
+
</g>
|
|
49
|
+
</g>
|
|
50
|
+
</g>
|
|
51
|
+
</g>
|
|
52
|
+
</g>
|
|
53
|
+
<text transform="matrix(1 0 0 1 308.4932 85.4316)" font-family="'MyriadPro-Regular'" font-size="6">i3s component</text>
|
|
54
|
+
<g>
|
|
55
|
+
<rect x="194.475" y="15.922" fill="#FFFFFF" width="42.565" height="24.534"/>
|
|
56
|
+
<g>
|
|
57
|
+
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="237.04,38.956 237.04,40.456 235.54,40.456 "/>
|
|
58
|
+
|
|
59
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0435,3.0435" x1="232.496" y1="40.456" x2="197.497" y2="40.456"/>
|
|
60
|
+
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="195.975,40.456 194.475,40.456 194.475,38.956 "/>
|
|
61
|
+
|
|
62
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0762,3.0762" x1="194.475" y1="35.88" x2="194.475" y2="18.96"/>
|
|
63
|
+
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="194.475,17.422 194.475,15.922 195.975,15.922 "/>
|
|
64
|
+
|
|
65
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0435,3.0435" x1="199.018" y1="15.922" x2="234.018" y2="15.922"/>
|
|
66
|
+
<polyline fill="none" stroke="#000000" stroke-miterlimit="10" points="235.54,15.922 237.04,15.922 237.04,17.422 "/>
|
|
67
|
+
|
|
68
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3.0762,3.0762" x1="237.04" y1="20.499" x2="237.04" y2="37.418"/>
|
|
69
|
+
</g>
|
|
70
|
+
</g>
|
|
71
|
+
<g>
|
|
72
|
+
<g>
|
|
73
|
+
<g>
|
|
74
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="215.485" y1="29.792" x2="215.485" y2="13.795"/>
|
|
75
|
+
<g>
|
|
76
|
+
<polygon points="217.964,14.525 215.472,10.207 212.979,14.524 "/>
|
|
77
|
+
</g>
|
|
78
|
+
</g>
|
|
79
|
+
</g>
|
|
80
|
+
<circle stroke="#000000" stroke-miterlimit="10" cx="215.485" cy="28.233" r="1.56"/>
|
|
81
|
+
<g>
|
|
82
|
+
<g>
|
|
83
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="217.045" y1="28.233" x2="230.379" y2="28.233"/>
|
|
84
|
+
<g>
|
|
85
|
+
<polygon points="229.65,30.712 233.967,28.219 229.65,25.726 "/>
|
|
86
|
+
</g>
|
|
87
|
+
</g>
|
|
88
|
+
</g>
|
|
89
|
+
</g>
|
|
90
|
+
<text transform="matrix(0.9982 0 0 1 7.3267 20.6519)"><tspan x="0" y="0" fill="#ED1C24" font-family="'MyriadPro-Regular'" font-size="6">transformation at which global offsets are computed is not the true</tspan><tspan x="0" y="7.2" fill="#ED1C24" font-family="'MyriadPro-Regular'" font-size="6">i3s world transformation. The component is moved along world z to</tspan><tspan x="0" y="14.4" fill="#ED1C24" font-family="'MyriadPro-Regular'" font-size="6">the right elevation of the components local origin.</tspan></text>
|
|
91
|
+
<g>
|
|
92
|
+
<g>
|
|
93
|
+
<line fill="none" stroke="#ED1C24" stroke-miterlimit="10" x1="179.261" y1="26.672" x2="186.314" y2="26.672"/>
|
|
94
|
+
<g>
|
|
95
|
+
<polygon fill="#ED1C24" points="185.584,29.151 189.902,26.658 185.584,24.165 "/>
|
|
96
|
+
</g>
|
|
97
|
+
</g>
|
|
98
|
+
</g>
|
|
99
|
+
<text transform="matrix(1 0 0 1 167.3262 44.271)" font-family="'MyriadPro-Regular'" font-size="6">world min</text>
|
|
100
|
+
<text transform="matrix(1 0 0 1 240.1548 16.7446)" font-family="'MyriadPro-Regular'" font-size="6">world max</text>
|
|
101
|
+
<g>
|
|
102
|
+
<g opacity="0.49">
|
|
103
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="188.933" y1="20" x2="189.18" y2="20.969"/>
|
|
104
|
+
|
|
105
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="1.9672,1.9672" x1="189.666" y1="22.875" x2="213.707" y2="117.235"/>
|
|
106
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="213.95" y1="118.188" x2="214.197" y2="119.157"/>
|
|
107
|
+
</g>
|
|
108
|
+
</g>
|
|
109
|
+
<g>
|
|
110
|
+
<g opacity="0.48">
|
|
111
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="240.155" y1="0.945" x2="239.953" y2="1.925"/>
|
|
112
|
+
|
|
113
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="2.0119,2.0119" x1="239.546" y1="3.895" x2="216.163" y2="117.193"/>
|
|
114
|
+
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="215.959" y1="118.178" x2="215.757" y2="119.157"/>
|
|
115
|
+
</g>
|
|
116
|
+
</g>
|
|
117
|
+
</svg>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
-
<svg width="256" height="256" viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
-
<circle cx="128" cy="128" r="121"/>
|
|
5
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="256" height="256" viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<circle cx="128" cy="128" r="121"/>
|
|
5
|
+
</svg>
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
-
<svg width="256" height="256" viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:1.5;">
|
|
4
|
-
<g transform="matrix(1.04167,0,0,1.04167,-5.33333,-5.33333)">
|
|
5
|
-
<path d="M128,8C194.23,8 248,61.77 248,128C248,194.23 194.23,248 128,248C61.77,248 8,194.23 8,128C8,61.77 61.77,8 128,8ZM128,16C189.814,16 240,66.186 240,128C240,189.814 189.814,240 128,240C66.186,240 16,189.814 16,128C16,66.186 66.186,16 128,16Z" style="fill:url(#_Linear1);stroke:black;stroke-opacity:0.5;stroke-width:0.96px;"/>
|
|
6
|
-
<g transform="matrix(-0.968,-1.18546e-16,1.18546e-16,-0.968,251.904,251.904)">
|
|
7
|
-
<path d="M128,8C194.23,8 248,61.77 248,128C248,194.23 194.23,248 128,248C61.77,248 8,194.23 8,128C8,61.77 61.77,8 128,8ZM128,12.298C191.857,12.298 243.702,64.143 243.702,128C243.702,191.857 191.857,243.702 128,243.702C64.143,243.702 12.298,191.857 12.298,128C12.298,64.143 64.143,12.298 128,12.298Z" style="fill:url(#_Linear2);"/>
|
|
8
|
-
</g>
|
|
9
|
-
</g>
|
|
10
|
-
<g transform="matrix(1.04167,0,0,1.04167,-5.33333,-5.33333)">
|
|
11
|
-
<circle cx="128" cy="128" r="112" style="fill:url(#_Radial3);"/>
|
|
12
|
-
</g>
|
|
13
|
-
<g transform="matrix(1.04167,0,0,1.04167,-5.33333,-5.33333)">
|
|
14
|
-
<path d="M128,20C219.884,21.811 235,108 235,108C235,108 189.814,80 128,80C66.186,80 21,108 21,108C21,108 42.244,18.31 128,20Z" style="fill:url(#_Linear4);"/>
|
|
15
|
-
</g>
|
|
16
|
-
<g transform="matrix(1.04167,0,0,1.04167,-272,-5.33333)">
|
|
17
|
-
<g transform="matrix(6.12323e-17,1,-1,6.12323e-17,511.5,8.88178e-16)">
|
|
18
|
-
<path d="M128,131.56L128,158" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
19
|
-
</g>
|
|
20
|
-
<g transform="matrix(6.12323e-17,1,-1,6.12323e-17,544.14,2.84217e-14)">
|
|
21
|
-
<path d="M128,129.64L128,156.08" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
22
|
-
</g>
|
|
23
|
-
<g transform="matrix(-1,1.22465e-16,-1.22465e-16,-1,512,255.5)">
|
|
24
|
-
<path d="M128,131.56L128,158" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
25
|
-
</g>
|
|
26
|
-
<g transform="matrix(-1,1.22465e-16,-1.22465e-16,-1,512,288.14)">
|
|
27
|
-
<path d="M128,129.64L128,156.08" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
28
|
-
</g>
|
|
29
|
-
</g>
|
|
30
|
-
<defs>
|
|
31
|
-
<linearGradient id="_Linear1" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(160.319,175.679,-175.679,160.319,48.3198,40.6399)"><stop offset="0" style="stop-color:white;stop-opacity:1"/><stop offset="1" style="stop-color:rgb(218,218,218);stop-opacity:1"/></linearGradient>
|
|
32
|
-
<linearGradient id="_Linear2" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(160.319,175.679,-175.679,160.319,48.3198,40.6399)"><stop offset="0" style="stop-color:white;stop-opacity:1"/><stop offset="1" style="stop-color:rgb(154,154,154);stop-opacity:1"/></linearGradient>
|
|
33
|
-
<radialGradient id="_Radial3" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(165,-1,1,165,128,211)"><stop offset="0" style="stop-color:white;stop-opacity:0.44"/><stop offset="1" style="stop-color:white;stop-opacity:0"/></radialGradient>
|
|
34
|
-
<linearGradient id="_Linear4" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(3.67539e-15,-60.0236,60.0236,3.67539e-15,128,80)"><stop offset="0" style="stop-color:white;stop-opacity:0.05"/><stop offset="1" style="stop-color:white;stop-opacity:0.4"/></linearGradient>
|
|
35
|
-
</defs>
|
|
36
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="256" height="256" viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:1.5;">
|
|
4
|
+
<g transform="matrix(1.04167,0,0,1.04167,-5.33333,-5.33333)">
|
|
5
|
+
<path d="M128,8C194.23,8 248,61.77 248,128C248,194.23 194.23,248 128,248C61.77,248 8,194.23 8,128C8,61.77 61.77,8 128,8ZM128,16C189.814,16 240,66.186 240,128C240,189.814 189.814,240 128,240C66.186,240 16,189.814 16,128C16,66.186 66.186,16 128,16Z" style="fill:url(#_Linear1);stroke:black;stroke-opacity:0.5;stroke-width:0.96px;"/>
|
|
6
|
+
<g transform="matrix(-0.968,-1.18546e-16,1.18546e-16,-0.968,251.904,251.904)">
|
|
7
|
+
<path d="M128,8C194.23,8 248,61.77 248,128C248,194.23 194.23,248 128,248C61.77,248 8,194.23 8,128C8,61.77 61.77,8 128,8ZM128,12.298C191.857,12.298 243.702,64.143 243.702,128C243.702,191.857 191.857,243.702 128,243.702C64.143,243.702 12.298,191.857 12.298,128C12.298,64.143 64.143,12.298 128,12.298Z" style="fill:url(#_Linear2);"/>
|
|
8
|
+
</g>
|
|
9
|
+
</g>
|
|
10
|
+
<g transform="matrix(1.04167,0,0,1.04167,-5.33333,-5.33333)">
|
|
11
|
+
<circle cx="128" cy="128" r="112" style="fill:url(#_Radial3);"/>
|
|
12
|
+
</g>
|
|
13
|
+
<g transform="matrix(1.04167,0,0,1.04167,-5.33333,-5.33333)">
|
|
14
|
+
<path d="M128,20C219.884,21.811 235,108 235,108C235,108 189.814,80 128,80C66.186,80 21,108 21,108C21,108 42.244,18.31 128,20Z" style="fill:url(#_Linear4);"/>
|
|
15
|
+
</g>
|
|
16
|
+
<g transform="matrix(1.04167,0,0,1.04167,-272,-5.33333)">
|
|
17
|
+
<g transform="matrix(6.12323e-17,1,-1,6.12323e-17,511.5,8.88178e-16)">
|
|
18
|
+
<path d="M128,131.56L128,158" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
19
|
+
</g>
|
|
20
|
+
<g transform="matrix(6.12323e-17,1,-1,6.12323e-17,544.14,2.84217e-14)">
|
|
21
|
+
<path d="M128,129.64L128,156.08" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
22
|
+
</g>
|
|
23
|
+
<g transform="matrix(-1,1.22465e-16,-1.22465e-16,-1,512,255.5)">
|
|
24
|
+
<path d="M128,131.56L128,158" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
25
|
+
</g>
|
|
26
|
+
<g transform="matrix(-1,1.22465e-16,-1.22465e-16,-1,512,288.14)">
|
|
27
|
+
<path d="M128,129.64L128,156.08" style="fill:none;stroke:black;stroke-width:0.96px;stroke-linecap:butt;"/>
|
|
28
|
+
</g>
|
|
29
|
+
</g>
|
|
30
|
+
<defs>
|
|
31
|
+
<linearGradient id="_Linear1" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(160.319,175.679,-175.679,160.319,48.3198,40.6399)"><stop offset="0" style="stop-color:white;stop-opacity:1"/><stop offset="1" style="stop-color:rgb(218,218,218);stop-opacity:1"/></linearGradient>
|
|
32
|
+
<linearGradient id="_Linear2" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(160.319,175.679,-175.679,160.319,48.3198,40.6399)"><stop offset="0" style="stop-color:white;stop-opacity:1"/><stop offset="1" style="stop-color:rgb(154,154,154);stop-opacity:1"/></linearGradient>
|
|
33
|
+
<radialGradient id="_Radial3" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(165,-1,1,165,128,211)"><stop offset="0" style="stop-color:white;stop-opacity:0.44"/><stop offset="1" style="stop-color:white;stop-opacity:0"/></radialGradient>
|
|
34
|
+
<linearGradient id="_Linear4" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(3.67539e-15,-60.0236,60.0236,3.67539e-15,128,80)"><stop offset="0" style="stop-color:white;stop-opacity:0.05"/><stop offset="1" style="stop-color:white;stop-opacity:0.4"/></linearGradient>
|
|
35
|
+
</defs>
|
|
36
|
+
</svg>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../../interfaces";
|
|
2
|
-
|
|
3
|
-
export const supportsCurves: __esri.graphicBufferOperator["supportsCurves"];
|
|
4
|
-
export const executeMany: __esri.graphicBufferOperator["executeMany"];
|
|
1
|
+
import "../../interfaces";
|
|
2
|
+
|
|
3
|
+
export const supportsCurves: __esri.graphicBufferOperator["supportsCurves"];
|
|
4
|
+
export const executeMany: __esri.graphicBufferOperator["executeMany"];
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as t}from"tslib";import"../intl.js";import{property as e}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as o}from"../core/accessorSupport/decorators/subclass.js";import s from"../widgets/Widget.js";import{loadCalciteComponents as i}from"../widgets/support/componentsUtils.js";import{setFocus as n}from"../widgets/support/widgetUtils.js";import{messageBundle as r}from"../widgets/support/decorators/messageBundle.js";import{tsx as l}from"../widgets/support/jsxFactory.js";import{getCalciteModeClass as a}from"../support/modeUtils.js";import{substitute as c}from"../intl/substitute.js";const p="geoscene-identity-modal",d={base:p,info:`${p}__info`,notice:`${p}__notice`},u="GeoScene Online";let m=class extends s{constructor(t,e){super(t,e),this.container=document.createElement("div"),this.error=null,this.oAuthPrompt=!1,this.open=!1,this.signingIn=!1,this.server=null,this.resource=null,this._usernameInputNode=null,this._passwordInputNode=null,document.body.appendChild(this.container)}loadDependencies(){return i({button:()=>import("@
|
|
5
|
+
import{__decorate as t}from"tslib";import"../intl.js";import{property as e}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as o}from"../core/accessorSupport/decorators/subclass.js";import s from"../widgets/Widget.js";import{loadCalciteComponents as i}from"../widgets/support/componentsUtils.js";import{setFocus as n}from"../widgets/support/widgetUtils.js";import{messageBundle as r}from"../widgets/support/decorators/messageBundle.js";import{tsx as l}from"../widgets/support/jsxFactory.js";import{getCalciteModeClass as a}from"../support/modeUtils.js";import{substitute as c}from"../intl/substitute.js";const p="geoscene-identity-modal",d={base:p,info:`${p}__info`,notice:`${p}__notice`},u="GeoScene Online";let m=class extends s{constructor(t,e){super(t,e),this.container=document.createElement("div"),this.error=null,this.oAuthPrompt=!1,this.open=!1,this.signingIn=!1,this.server=null,this.resource=null,this._usernameInputNode=null,this._passwordInputNode=null,document.body.appendChild(this.container)}loadDependencies(){return i({button:()=>import("@geoscene/calcite-components/dist/components/calcite-button"),dialog:()=>import("@geoscene/calcite-components/dist/components/calcite-dialog"),input:()=>import("@geoscene/calcite-components/dist/components/calcite-input"),label:()=>import("@geoscene/calcite-components/dist/components/calcite-label"),notice:()=>import("@geoscene/calcite-components/dist/components/calcite-notice")})}get title(){return this.commonMessages?.auth.signIn}render(){const{open:t,title:e,messages:o,signingIn:s,oAuthPrompt:i,server:n,resource:r,error:p}=this,{info:m,oAuthInfo:h,lblItem:g,invalidUser:b,noAuthService:f,lblUser:v,lblPwd:y,lblCancel:_,lblSigning:I,lblOk:w}=o;return l("div",{class:this.classes(d.base,a(this.container))},l("form",{bind:this,onsubmit:this._submit},l("calcite-dialog",{bind:this,heading:e,modal:!0,open:t,outsideCloseDisabled:!0,scale:"s",widthScale:"s",onCalciteDialogClose:this._cancel,onCalciteDialogOpen:this._focusUsernameInput},l("div",{class:d.info},c(i?h:m,{server:n&&/\.geosceneonline.cn/i.test(n)?u:n,resource:`(${r||g})`})),p?l("calcite-notice",{class:d.notice,icon:"exclamation-mark-triangle",kind:"danger",open:!0},l("div",{slot:"message"},p.details?.httpStatus?b:f)):null,i?null:[l("calcite-label",null,v,l("calcite-input",{afterCreate:t=>this._usernameInputNode=t,autocomplete:"off",bind:this,name:"username",required:!0,spellcheck:!1,type:"text",value:""})),l("calcite-label",null,y,l("calcite-input",{afterCreate:t=>this._passwordInputNode=t,bind:this,name:"password",required:!0,type:"password",value:""}))],l("calcite-button",{appearance:"outline",bind:this,onclick:this._cancel,slot:"footer-end",type:"button"},_),l("calcite-button",{loading:!!s,slot:"footer-end",type:"submit"},s?I:w))))}_focusUsernameInput(){return n(()=>this._usernameInputNode)}_cancel(){this._set("signingIn",!1),this.open=!1,this._usernameInputNode&&(this._usernameInputNode.value=""),this._passwordInputNode&&(this._passwordInputNode.value=""),this.emit("cancel")}_submit(t){t.preventDefault(),this._set("signingIn",!0);const e=this.oAuthPrompt?{}:{username:this._usernameInputNode?.value,password:this._passwordInputNode?.value};this.emit("submit",e)}};t([e({readOnly:!0})],m.prototype,"container",void 0),t([e(),r("geoscene/t9n/common")],m.prototype,"commonMessages",void 0),t([e()],m.prototype,"error",void 0),t([e(),r("geoscene/identity/t9n/identity")],m.prototype,"messages",void 0),t([e()],m.prototype,"oAuthPrompt",void 0),t([e()],m.prototype,"open",void 0),t([e()],m.prototype,"signingIn",void 0),t([e()],m.prototype,"server",void 0),t([e({readOnly:!0})],m.prototype,"title",null),t([e()],m.prototype,"resource",void 0),m=t([o("geoscene.identity.IdentityModal")],m);const h=m;export{h as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../core/Error.js";import{assertIsSome as i}from"../../../core/maybe.js";import{urlToObject as s}from"../../../core/urlUtils.js";import{property as r}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/has.js";import"../../../core/Logger.js";import"../../../core/RandomLCG.js";import{subclass as a}from"../../../core/accessorSupport/decorators/subclass.js";import l from"../../../geometry/Extent.js";import n from"../../../geometry/Point.js";import o from"../../../geometry/SpatialReference.js";import c from"../RasterInfo.js";import m from"../RasterStorageInfo.js";import u from"../TileInfo.js";import{TilemapCache as h}from"../TilemapCache.js";import f from"./BaseRaster.js";import{setValidBoundary as p}from"../rasterFunctions/pixelUtils.js";import d from"../rasterTransforms/GCSShiftTransform.js";import{patchServiceInfo as y,fetchServiceRasterInfo as x}from"../../../rest/imageService/fetchRasterInfo.js";let g=class extends f{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,i,s={}){const{storageInfo:r,extent:a}=this.rasterInfo,{transposeInfo:l}=r,n=null!=l&&!!s.transposedVariableName;if(this._slices&&!n&&null==s.sliceId)return null;const o=n?0:r.maximumPyramidLevel-e+this._levelOffset,c=`${this.url}/tile/${o}/${t}/${i}`,m=this._slices?n?{variable:s.transposedVariableName}:{sliceId:s.sliceId||0}:null;let u,h;if(r.isBsqTile){const e=(s.bandIds?.length?s.bandIds:[0,1,2]).map(e=>this.request(c,{query:{...m,bandId:e},responseType:"array-buffer",signal:s.signal})),t=await Promise.all(e),i=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),r=new Uint8Array(i);h=[];let a=0;for(const{data:s}of t)h.push(a),r.set(new Uint8Array(s),a),a+=s.byteLength;u=r.buffer}else{u=(await this.request(c,{query:m,responseType:"array-buffer",signal:s.signal})).data}if(!u)return null;const f=n?l.tileSize:r.tileInfo.size,d=await this.decodePixelBlock(u,{width:f[0],height:f[1],planes:h?.length,offsets:h,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:n,noDataValue:this.rasterInfo.noDataValue,useCanvas: r.tileInfo?.format === "TerrainDEM"});if(null==d)return null;const y=r.blockBoundary[e];if("jpg"!==r.compression||i>y.minCol&&i<y.maxCol&&t>y.minRow&&t<y.maxRow)return d;const{origin:x,blockWidth:g,blockHeight:v}=r,{x:S,y:I}=this.getPyramidPixelSize(e),w=Math.round((a.xmin-x.x)/S)%g,b=Math.round((a.xmax-x.x)/S)%g||g,T=Math.round((x.y-a.ymax)/I)%v,M=Math.round((x.y-a.ymin)/I)%v||v,j=i===y.minCol?w:0,_=t===y.minRow?T:0,O=i===y.maxCol?b:g,R=t===y.maxRow?M:v;return p(d,{x:j,y:_},{width:O-j,height:R-_}),d}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;const t=e;for(let i=0;i<this._slices.length;i++){const e=this._slices[i].multidimensionalDefinition;if(e.length===t.length&&!e.some(e=>{const i=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);if(!i)return!0;return(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(i.values[0])?`${i.values[0][0]}-${i.values[0][1]}`:i.values[0])}))return i}return null}async fetchVariableStatisticsHistograms(e,t){const i=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),s=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),r=await Promise.all([i,s]);return r[0]&&r[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),r[1]?.[0]?.counts?.length||(r[1]=null),{statistics:r[0]||null,histograms:r[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let i=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===i)return null;let s=0;const{maximumPyramidLevel:r}=this.rasterInfo.storageInfo;let a=r-s+this._levelOffset;const l=i.srcLocation;for(;a>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(a,i.row,i.col,t))break}catch{}if(a--,s++,i=this.identifyPixelLocation(l,s,t.datumTransformation),null===i)return null}return-1===a||null==i?null:s}async _open(e){const r=e?.signal,a=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:r});a.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));const l=a.data;if(this.sourceJSON=l,!l)throw new t("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!l.tileInfo)throw new t("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo();const n=["jpg","jpeg","png","png8","png24","png32","mixed","terrainrgb","terraindem"];this.tileType=l.cacheType,null==this.tileType&&(n.includes(l.tileInfo.format.toLowerCase())?this.tileType="Map":"lerc"===l.tileInfo.format.toLowerCase()?this.tileType="Elevation":this.tileType="Raster"),this.datasetName=l.name?.slice(l.name.indexOf("/")+1)??"";const o=await this._fetchRasterInfo({signal:r});if(null==o)throw new t("image-server-raster:open","cannot initialize image service");y(o,l);const c="Map"===this.tileType?v(l.tileInfo,l):u.fromJSON(l.tileInfo);i(c);const[f,p]=this._computeMinMaxLOD(o,c),{extent:d,pixelSize:x}=o,g=.5/o.width*x.x,I=Math.max(x.x,x.y),{lods:w}=c;("Map"!==this.tileType&&0!==l.maxScale||Math.abs(x.x-x.y)>g||!w.some(e=>Math.abs(e.resolution-I)<g))&&(x.x=x.y=f.resolution,o.width=Math.ceil((d.xmax-d.xmin)/x.x-.1),o.height=Math.ceil((d.ymax-d.ymin)/x.y-.1));const b=f.level-p.level,[T,M]=c.size,j=[],_=[];w.forEach((e,t)=>{e.level>=p.level&&e.level<=f.level&&j.push({x:e.resolution,y:e.resolution}),t<w.length-1&&_.push(Math.round(10*e.resolution/w[t+1].resolution)/10)}),j.sort((e,t)=>e.x-t.x);const O=this.computeBlockBoundary(d,T,M,c.origin,j,b),R=j.length>1?j.slice(1):null;let L;l.transposeInfo&&(L={tileSize:[l.transposeInfo.rows,l.transposeInfo.cols],packetSize:o.keyProperties?._yxs.PacketSize??0});const z=_.length<=1||_.length>=3&&_.slice(0,-1).every(e=>e===_[0])?_[0]??2:Math.round(10/(p.resolution/f.resolution)**(-1/b))/10;if(o.storageInfo=new m({blockWidth:c.size[0],blockHeight:c.size[1],pyramidBlockWidth:c.size[0],pyramidBlockHeight:c.size[1],pyramidResolutions:R,pyramidScalingFactor:z,compression:c.format,origin:c.origin,firstPyramidLevel:1,maximumPyramidLevel:b,tileInfo:c,isBsqTile:!!l.bsq,transposeInfo:L,blockBoundary:O}),S(o),this._set("rasterInfo",o),l.capabilities.toLowerCase().includes("tilemap")){const e={tileInfo:o.storageInfo.tileInfo,parsedUrl:s(this.url),url:this.url,tileServers:[]};this._tilemapCache=new h({layer:e})}}async _fetchRasterInfo(e){const t=this.sourceJSON;if("Map"===this.tileType){const e=t.fullExtent||t.extent,i=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),s=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),r=o.fromJSON(t.spatialReference||e.spatialReference),a=new n({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:r});return new c({width:i,height:s,bandCount:3,extent:l.fromJSON(e),spatialReference:r,pixelSize:a,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}const{signal:i}=e,s=x(this.url,this.sourceJSON,{signal:i,query:this.ioConfig.customFetchParameters}),r=t.hasMultidimensions?this.request(`${this.url}/slices`,{query:{f:"json"},signal:i}).then(e=>e.data?.slices).catch(()=>null):null,a=await Promise.all([s,r]);return this._slices=a[1],a[0]}_fixScaleInServiceInfo(){const{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){const{pixelSize:i}=e,s=.5/e.width*i.x,{lods:r}=t,a=t.lodAt(Math.max.apply(null,r.map(e=>e.level))),l=t.lodAt(Math.min.apply(null,r.map(e=>e.level))),{tileType:n}=this;if("Map"===n)return this._levelOffset=r[0].level,[a,l];if("Raster"===n){return[r.find(e=>e.resolution===i.x)??a,l]}const{minScale:o,maxScale:c}=this.sourceJSON;let m=a;c>0&&(m=r.find(e=>Math.abs(e.scale-c)<s),m||(m=r.filter(e=>e.scale>c).sort((e,t)=>e.scale>t.scale?1:-1)[0]??a));let u=l;return o>0&&(u=r.find(e=>Math.abs(e.scale-o)<s)??l,this._levelOffset=u.level-l.level),[m,u]}};function v(e,t){if(!e)return null;const{minScale:i,maxScale:s,minLOD:r,maxLOD:a}=t;if(null!=r&&null!=a)return u.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=r&&e<=a)});if(0!==i&&0!==s){const t=e=>Math.round(1e4*e)/1e4,r=i?t(i):1/0,a=s?t(s):-1/0;return u.fromJSON({...e,lods:e.lods.filter(e=>{const i=t(e.scale);return i<=r&&i>=a})})}return u.fromJSON(e)}function S(e){const{extent:t,spatialReference:i}=e;t.xmin>-1&&t.xmax>181&&i?.wkid&&i.isGeographic&&(e.nativeExtent=e.extent,e.transform=new d,e.extent=e.transform.forwardTransform(t))}e([r({type:String,json:{write:!0}})],g.prototype,"datasetFormat",void 0),e([r()],g.prototype,"tileType",void 0),g=e([a("geoscene.layers.support.rasterDatasets.ImageServerRaster")],g);const I=g;export{I as default};
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../../core/Error.js";import{assertIsSome as i}from"../../../core/maybe.js";import{urlToObject as s}from"../../../core/urlUtils.js";import{property as r}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/has.js";import"../../../core/Logger.js";import"../../../core/RandomLCG.js";import{subclass as a}from"../../../core/accessorSupport/decorators/subclass.js";import l from"../../../geometry/Extent.js";import n from"../../../geometry/Point.js";import o from"../../../geometry/SpatialReference.js";import c from"../RasterInfo.js";import m from"../RasterStorageInfo.js";import u from"../TileInfo.js";import{TilemapCache as h}from"../TilemapCache.js";import f from"./BaseRaster.js";import{setValidBoundary as p}from"../rasterFunctions/pixelUtils.js";import d from"../rasterTransforms/GCSShiftTransform.js";import{patchServiceInfo as y,fetchServiceRasterInfo as x}from"../../../rest/imageService/fetchRasterInfo.js";let g=class extends f{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,i,s={}){const{storageInfo:r,extent:a}=this.rasterInfo,{transposeInfo:l}=r,n=null!=l&&!!s.transposedVariableName;if(this._slices&&!n&&null==s.sliceId)return null;const o=n?0:r.maximumPyramidLevel-e+this._levelOffset,c=`${this.url}/tile/${o}/${t}/${i}`,m=this._slices?n?{variable:s.transposedVariableName}:{sliceId:s.sliceId||0}:null;let u,h;if(r.isBsqTile){const e=(s.bandIds?.length?s.bandIds:[0,1,2]).map(e=>this.request(c,{query:{...m,bandId:e},responseType:"array-buffer",signal:s.signal})),t=await Promise.all(e),i=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),r=new Uint8Array(i);h=[];let a=0;for(const{data:s}of t)h.push(a),r.set(new Uint8Array(s),a),a+=s.byteLength;u=r.buffer}else{u=(await this.request(c,{query:m,responseType:"array-buffer",signal:s.signal})).data}if(!u)return null;const f=n?l.tileSize:r.tileInfo.size,d=await this.decodePixelBlock(u,{width:f[0],height:f[1],planes:h?.length,offsets:h,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:n,noDataValue:this.rasterInfo.noDataValue,useCanvas: r.tileInfo?.format === "TerrainDEM"||r.tileInfo?.format === "WEBP"});if(null==d)return null;const y=r.blockBoundary[e];if("jpg"!==r.compression||i>y.minCol&&i<y.maxCol&&t>y.minRow&&t<y.maxRow)return d;const{origin:x,blockWidth:g,blockHeight:v}=r,{x:S,y:I}=this.getPyramidPixelSize(e),w=Math.round((a.xmin-x.x)/S)%g,b=Math.round((a.xmax-x.x)/S)%g||g,T=Math.round((x.y-a.ymax)/I)%v,M=Math.round((x.y-a.ymin)/I)%v||v,j=i===y.minCol?w:0,_=t===y.minRow?T:0,O=i===y.maxCol?b:g,R=t===y.maxRow?M:v;return p(d,{x:j,y:_},{width:O-j,height:R-_}),d}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;const t=e;for(let i=0;i<this._slices.length;i++){const e=this._slices[i].multidimensionalDefinition;if(e.length===t.length&&!e.some(e=>{const i=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);if(!i)return!0;return(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(i.values[0])?`${i.values[0][0]}-${i.values[0][1]}`:i.values[0])}))return i}return null}async fetchVariableStatisticsHistograms(e,t){const i=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),s=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),r=await Promise.all([i,s]);return r[0]&&r[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),r[1]?.[0]?.counts?.length||(r[1]=null),{statistics:r[0]||null,histograms:r[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let i=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===i)return null;let s=0;const{maximumPyramidLevel:r}=this.rasterInfo.storageInfo;let a=r-s+this._levelOffset;const l=i.srcLocation;for(;a>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(a,i.row,i.col,t))break}catch{}if(a--,s++,i=this.identifyPixelLocation(l,s,t.datumTransformation),null===i)return null}return-1===a||null==i?null:s}async _open(e){const r=e?.signal,a=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:r});a.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));const l=a.data;if(this.sourceJSON=l,!l)throw new t("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!l.tileInfo)throw new t("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo();const n=["jpg","jpeg","png","png8","png24","png32","mixed","terrainrgb","terraindem"];this.tileType=l.cacheType,null==this.tileType&&(n.includes(l.tileInfo.format.toLowerCase())?this.tileType="Map":"lerc"===l.tileInfo.format.toLowerCase()?this.tileType="Elevation":this.tileType="Raster"),this.datasetName=l.name?.slice(l.name.indexOf("/")+1)??"";const o=await this._fetchRasterInfo({signal:r});if(null==o)throw new t("image-server-raster:open","cannot initialize image service");y(o,l);const c="Map"===this.tileType?v(l.tileInfo,l):u.fromJSON(l.tileInfo);i(c);const[f,p]=this._computeMinMaxLOD(o,c),{extent:d,pixelSize:x}=o,g=.5/o.width*x.x,I=Math.max(x.x,x.y),{lods:w}=c;("Map"!==this.tileType&&0!==l.maxScale||Math.abs(x.x-x.y)>g||!w.some(e=>Math.abs(e.resolution-I)<g))&&(x.x=x.y=f.resolution,o.width=Math.ceil((d.xmax-d.xmin)/x.x-.1),o.height=Math.ceil((d.ymax-d.ymin)/x.y-.1));const b=f.level-p.level,[T,M]=c.size,j=[],_=[];w.forEach((e,t)=>{e.level>=p.level&&e.level<=f.level&&j.push({x:e.resolution,y:e.resolution}),t<w.length-1&&_.push(Math.round(10*e.resolution/w[t+1].resolution)/10)}),j.sort((e,t)=>e.x-t.x);const O=this.computeBlockBoundary(d,T,M,c.origin,j,b),R=j.length>1?j.slice(1):null;let L;l.transposeInfo&&(L={tileSize:[l.transposeInfo.rows,l.transposeInfo.cols],packetSize:o.keyProperties?._yxs.PacketSize??0});const z=_.length<=1||_.length>=3&&_.slice(0,-1).every(e=>e===_[0])?_[0]??2:Math.round(10/(p.resolution/f.resolution)**(-1/b))/10;if(o.storageInfo=new m({blockWidth:c.size[0],blockHeight:c.size[1],pyramidBlockWidth:c.size[0],pyramidBlockHeight:c.size[1],pyramidResolutions:R,pyramidScalingFactor:z,compression:c.format,origin:c.origin,firstPyramidLevel:1,maximumPyramidLevel:b,tileInfo:c,isBsqTile:!!l.bsq,transposeInfo:L,blockBoundary:O}),S(o),this._set("rasterInfo",o),l.capabilities.toLowerCase().includes("tilemap")){const e={tileInfo:o.storageInfo.tileInfo,parsedUrl:s(this.url),url:this.url,tileServers:[]};this._tilemapCache=new h({layer:e})}}async _fetchRasterInfo(e){const t=this.sourceJSON;if("Map"===this.tileType){const e=t.fullExtent||t.extent,i=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),s=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),r=o.fromJSON(t.spatialReference||e.spatialReference),a=new n({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:r});return new c({width:i,height:s,bandCount:3,extent:l.fromJSON(e),spatialReference:r,pixelSize:a,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}const{signal:i}=e,s=x(this.url,this.sourceJSON,{signal:i,query:this.ioConfig.customFetchParameters}),r=t.hasMultidimensions?this.request(`${this.url}/slices`,{query:{f:"json"},signal:i}).then(e=>e.data?.slices).catch(()=>null):null,a=await Promise.all([s,r]);return this._slices=a[1],a[0]}_fixScaleInServiceInfo(){const{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){const{pixelSize:i}=e,s=.5/e.width*i.x,{lods:r}=t,a=t.lodAt(Math.max.apply(null,r.map(e=>e.level))),l=t.lodAt(Math.min.apply(null,r.map(e=>e.level))),{tileType:n}=this;if("Map"===n)return this._levelOffset=r[0].level,[a,l];if("Raster"===n){return[r.find(e=>e.resolution===i.x)??a,l]}const{minScale:o,maxScale:c}=this.sourceJSON;let m=a;c>0&&(m=r.find(e=>Math.abs(e.scale-c)<s),m||(m=r.filter(e=>e.scale>c).sort((e,t)=>e.scale>t.scale?1:-1)[0]??a));let u=l;return o>0&&(u=r.find(e=>Math.abs(e.scale-o)<s)??l,this._levelOffset=u.level-l.level),[m,u]}};function v(e,t){if(!e)return null;const{minScale:i,maxScale:s,minLOD:r,maxLOD:a}=t;if(null!=r&&null!=a)return u.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=r&&e<=a)});if(0!==i&&0!==s){const t=e=>Math.round(1e4*e)/1e4,r=i?t(i):1/0,a=s?t(s):-1/0;return u.fromJSON({...e,lods:e.lods.filter(e=>{const i=t(e.scale);return i<=r&&i>=a})})}return u.fromJSON(e)}function S(e){const{extent:t,spatialReference:i}=e;t.xmin>-1&&t.xmax>181&&i?.wkid&&i.isGeographic&&(e.nativeExtent=e.extent,e.transform=new d,e.extent=e.transform.forwardTransform(t))}e([r({type:String,json:{write:!0}})],g.prototype,"datasetFormat",void 0),e([r()],g.prototype,"tileType",void 0),g=e([a("geoscene.layers.support.rasterDatasets.ImageServerRaster")],g);const I=g;export{I as default};
|
package/package.json
CHANGED