Scale Minimum: Radar Range method (Maritime Charting)
The Radar Range method applies the SCAMIN values dynamically by taking the compilation scale of the S-57 product, or the M_CSCL feature within the product, and derives a feature's SCAMIN value based on a combination of rules and the two tables (Standard Radar Range and SCAMIN value) contained in the XML file.
Consider the following when configuring rules in the SCAMIN.xml file:
- Compilation scale value of the S-57 cell, or the M_CSCL feature
- Standard Radar Scale table and SCAMIN Value table
- Rule type
- Syntax for the rules
- M_CSCL features
Compilation Scale of S-57 Cell or M_CSCL features
With the Radar Range method of calculation, the calculation is based on the compilation scale value of either the S-57 cell or the M_CSCL feature contained within the cell.
Standard Radar Scale and SCAMIN Value tables
The compilation scale value of the S-57 cell, or the M_CSCL feature within the S-57 cell, is referenced to the nearest larger standard radar range value based on a table of radar scales. If an object falls between two of the radar scales below, the next larger scale is selected. For example, if the Compilation Scale of the S-57 cell or M_CSCL feature is 1:25000, the radar scale used to determine the SCAMIN value is 1:22,000.
Standard Radar Scale (rounded) |
---|
1:3,000,000 |
1:1,500,000 |
1:700,000 |
1:350,000 |
1:180,000 |
1:90,000 |
1:45,000 |
1:22,000 |
1:12,000 |
1:8000 |
1:4000 |
The standard radar scale is used as the starting point in the SCAMIN Value table to determine the value set on a given feature. The table lists 22 Specific SCAMIN scale values that are used in conjunction with rules/step values specified in the SCAMIN XML. The step values are used as a counter within the SCAMIN Value table to determine how many scale values smaller than that particular object should be displayed.
SCAMIN Value |
---|
1:19,999,999 |
1:9,999,999 |
1:4,999,999 |
1:2,999,999 |
1:1,499,999 |
1:699,999 |
1:499,999 |
1:349,999 |
1:259,999 |
1:179,999 |
1:119,999 |
1:89,999 (Step 4) |
1:59,999 (Step 3) |
1:44,999 (Step 2) |
1:29,999 (Step 1) |
1:21,999 |
1:17,999 |
1:11,999 |
1:7,999 |
1:3,999 |
1:1,999 |
1:999 |
For example, if a radar scale value is 1:22,000, then the SCAMIN scale value starting position is 1:21,999. If a rule in the SCAMIN XML states that a feature receives a step value of 4, then the SCAMIN value for that feature will move four places to a smaller scale, which in this example is 1:89,999.
This may be counterintuitive. Scale is a ratio, so the larger the number, the further the feature is from the actual size; hence, smaller scale.
Rules types
The following table describes the rule types supported by the Radar Range method. Listed are the S-57 objects, the primitive/geometry type the rule applies to, the condition that the feature needs to meet, and the number of steps being used to determine the SCAMIN value.
Rule type | S-57 object | Primitive | Condition | SCAMIN steps |
---|---|---|---|---|
By feature—Specific S-57 object | ADMARE | Area | No Condition | 3 |
By feature/attribute—Specific S-57 object with a attribute condition | AIRARE | Point/Area | If CONVIS = 1 (visually conspicuous) | 3 |
By spatial location—S-57 object is spatially associated with another feature | PIPSOL | Point | Covered by an area LNDARE | 1 |
PIPSOL | Point/Line | Covered by an area DEPARE, DRGARE, or UNSARE | 3 | |
By both spatial location and attribute condition | BRIDGE | Point/Line/Area | Attribute CONVIS = 1 and covered by an area LNDARE | 3 |
BRIDGE | Point/Line/Area | Attribute CONRAD = 1 and covered by an area LNDARE | 3 | |
By feature relationship (Master/Slave) | TOPMAR | Point | Relationship Rule Condition: Slave features will reflect the Master feature's SCAMIN value. | 3 |
BOYISD | Point | Master Feature Relationship Rule will contain the overriding SCAMIN value for both features. | 4 |
Rule syntax
The following are syntax examples for the rule types supported by the Radar Range method.
When defining a rule with attribute conditions, they should be listed based on ascending step values. For example, conditional step value = 1 should be followed by conditional step value = 2, 3, 4, and so on. This ensures that features meeting more than one attribute condition will be calculated based on the greatest number of steps.
The spatial rule sets contain operators such as share and cover. These operators are used to spatially evaluate a feature to determine if it meets the criteria for a given rule condition.
- Share—This operator is used to determine if the S-57 object being evaluated by the rule shares a common boundary (edge) with the object listed in the rule's spatial condition
- Cover—This operator is used to determine if the S-57 object being evaluated by the rule is completely covered by the object listed in the rule's spatial condition
In the following example, if DAMCON_Dam Line or Area has a common boundary with "NaturalFeaturesA|LNDARE_LandArea" or "DepthsA|DEPARE_DepthArea," then the share spatial operator is placed in the spatial rule.
<Object Name="DAMCON_Dam" PrimitiveType="Line|Area" HasCondition="true" DefaultStepValue="1">
<Conditions>
<Condition StepValue="NULL">
<Rules>
<Rule Type="S" Object="NaturalFeaturesA|LNDARE_LandArea" Operator="share" />
<Rule Type="S" Object="DepthsA|DEPARE_DepthArea" Operator="share" />
</Rules>
</Condition>
In the following example, if "LOGPON_LogPond" Point or Area is completely covered by a "DepthsA|DEPARE_DepthArea", a "DepthsA|DRGARE_DredgedArea", or a "DepthsA|UNSARE_UnsurveyedArea," then the Cover spatial operator is placed in the spatial rule.
<Object Name="LOGPON_LogPond" PrimitiveType="Point|Area" HasCondition="true" DefaultStepValue="1">
<Conditions>
<Condition StepValue="4">
<Rules>
<Rule Type="S" Object="DepthsA|DEPARE_DepthArea" Operator="Cover" />
</Rules>
</Condition>
Feature-based rule set
Rule: Evaluates whether the feature is encoded as a specific S-57 object
In the following rule example, "ADMARE_AdministrativeAreaNamed" receives three steps.
<Object Name = "ADMARE_AdministrationAreaNamed" PrimitiveType = "Area" HasCondition = "false" DefaultStepValue = "3" />
Feature/Attribute-based rule set
Rule: Evaluates whether the feature is encoded as a specific S-57 object and meets the attribute condition
In the following rule example, "AIRARE_AirportAirfield" receives three steps if it meets the attribute condition of CONVIS = 1, or one step if it does not meet the condition.
<Object Name = "AIRARE_AirportAirfield" PrimitiveType = "Point|Area" HasCondition = "true" DefaultStepValue = "1">
<Conditions>
<Condition StepValue ="3">
<Rules>
<Rule Type ="A" Field ="CONVIS" Operator ="equal" Value ="1" />
</Rules>
</Condition>
</Conditions>
</Object>
Spatial location-based rule set
Rule: Evaluates whether the feature is encoded as a specific S-57 object and is spatially associated with another feature
In the following rule example, a "PIPSOL_PipelineSubmarineOnLand" point feature receives one step if it is covered by LNDARE, or three steps if it is covered by DEPARE, DRGARE, or UNSARE.
<Object Name = "PIPSOL_PipelineSubmarineOnLand" PrimitiveType = "Point" HasCondition = "true" DefaultStepValue = "0">
<Conditions>
<Condition StepValue = "1">
<Rules>
<Rule Type = "S" Object = "NaturalFeaturesA|LNDARE_LandArea" Operator = "Cover"/>
</Rules>
</Condition>
<Condition StepValue = "3">
<Rules>
<Rule Type = "S" Object = "DepthsA|DEPARE_DepthArea" Operator = "Cover"/>
</Rules>
</Condition>
<Condition StepValue = "3">
<Rules>
<Rule Type = "S" Object = "DepthsA|DRGARE_DredgedArea" Operator = "Cover"/>
</Rules>
</Condition>
<Condition StepValue = "3">
<Rules>
<Rule Type = "S" Object = "DepthsA|UNSARE_UnsurveyedArea" Operator = "Cover"/>
</Rules>
</Condition>
</Conditions>
</Object>
Spatial location and attribute-based rule set
Rule: Evaluates whether the feature is encoded as a specific S-57 object, is spatially associated with another feature, and meets the attribute condition
In the following rule example, "BRIDGE_Bridge" receives three steps if it meets the attribute condition of CONVIS = 1 or CONRAD = 1 AND is covered by LNDARE.
<ObjectMap>
<Object Name = "BRIDGE_Bridge" PrimitiveType = "Point|Line|Area" HasCondition = "true" DefaultStepValue = "0" >
<Condition StepValue = "3">
<Rules>
<Rule Type = "A" Field = "CONVIS" Operator = "equal" Value = "1" />
<Rule Type = "S" Object = "NaturalFeaturesA|LNDARE_LandArea" Operator = "Cover"/>
</Rules>
</Condition>
<Condition StepValue = "3">
<Rules>
<Rule Type = "A" Field = "CONRAD" Operator = "equal" Value = "1" />
<Rule Type = "S" Object = "NaturalFeaturesA|LNDARE_LandArea" Operator = "Cover"/>
</Rules>
</Condition>
</Object>
Feature relationship-based rule set
Rule: A slave feature's SCAMIN value will match that of the master feature.
In the following rule example, "TOPMAR_Topmark" receives three steps if it is a stand-alone feature, or it will receive the number of steps of its associated master feature (four steps).
<Object Name = "TOPMAR_Topmark" PrimitiveType = "Point" HasCondition = "true" DefaultStepValue = "3">
<Conditions>
<Condition StepValue ="3">
<Rules>
<Rule Type ="R" />
</Rules>
</Condition>
</Conditions>
This is the master feature for the above TOPMAR_Topmark.
<Object Name = "BOYISD_BuoyIsolatedDanger" PrimitiveType = "Point" HasCondition = "false" DefaultStepValue = "4" />
SCAMIN and unit conversion
The Radar Range method is based on S-65 guidance and introduces rule conditions that evaluate features based on two Depth Units (DUNI) attribute fields: VALSOU and VALDCO. Since the S-57 specification requires that depth and height attribute fields be encoded with metric values, it can be assumed that the values listed in the S-65 recommendations are metric.
When unit conversion is used, you need to update the Radar Range method rule set to ensure that VALSOU and VALDCO are evaluated based on the proper unit of measure. This also applies for any custom attribute conditions you create.
For example, the VALDCO attribute was updated in the following XML exert from the Radar Range method rule set to the derived attribute VALDCO_M. The underscore M identifies the attribute units as meters.
<Object Name="DEPCNT_DepthContour" PrimitiveType="Line" HasCondition="true" DefaultStepValue="2">
<Conditions>
<Condition StepValue="4">
<Rules>
<Rule Type="A" Field="VALDCO_M" Operator="equal" Value="0" />
</Rules>
</Condition>
<Condition StepValue="4">
<Rules>
<Rule Type="A" Field="VALDCO_M" Operator="equal" Value="30" />
</Rules>
</Condition>
</Conditions>
</Object>
Default step value
There are two situations that result in the default step value being applied to a given S-57 object.
- A feature rule (no conditions) is used to encode SCAMIN for the S-57 object.
- The encoding or spatial disposition of a given S-57 object fails to meet the listed conditions for the defined rule.
Based on the step values used within the S-65 rule set, it is recommended that a value of 1, 2, 3, or 4 is used when defining rules for the Radar Range method. In addition, a value of 0 or Null can be used to meet special situations.
- 0—A feature that has a step value of 0 applied is not updated by the SCAMIN process. It preserves whatever value is encoded.
- NULL—S-65 lists features with a step value equal to NOT SET; NULL is used by the Radar Range method to equate to this value. Features using this default step value will have their SCAMIN attribute set to <NULL> regardless of its value prior to the SCAMIN process. An exception is made for features that have the SCAMIN LOCK set to True.
M_CSCL features
M_CSCL features are used to indicate that a subset of features within the S-57 cell have a different compilation scale than the main portion of the dataset. Features spatially within these areas are evaluated based on the M_CSCL compilation scale, and this is the compilation scale that the SCAMIN tool will use for basing the Radar Range method of calculations. To support this, all features should be split along M_CSCL boundaries; those that are not are flagged in the SCAMIN log file.
The SCAMIN lock
The SCAMIN_LOCK attribute is a Boolean field at the feature level used to override the SCAMIN process.
SCAMIN_LOCK |
Description |
---|---|
LOCKED |
By setting the SCAMIN_LOCK equal to (1), the SCAMIN process will preserve the current SCAMIN attribute value on the feature and ignore settings in the selected SCAMIN.xml file. |
UNLOCKED or Null |
By setting the SCAMIN_LOCK equal to (0) or <Null>, the feature will be processed, and the SCAMIN will be set according to the selected SCAMIN.xml configuration. |
Reviewing the SCAMIN log file
After the SCAMIN tool is run, you can review the SCAMIN log file. This file contains records of which features were modified and reports any issues the SCAMIN tool encountered.
Example: When a feature is not split as it crosses the main ENC cell into a MetaDataA (M_CSCL) feature or if a feature falls exactly on the MetaDataA boundary, then the feature is written to the log file.
The location of the log files generated by the tool is different depending on your operating system:
- On Windows XP, log files are written to <Installation location>\Documents and Settings\<User Login>\Application Data\ESRI\Production10.2.1\Nautical\LogFiles\SCAMIN.
- On Windows Vista, Windows 7, and Windows Server 2008, log files are written to <Installation location>\Users\<UserLogin>\AppData\Roaming\ESRI\Production10.2.1\NAUTICAL\LogFiles\SCAMIN.
The name of the log file will be SCAMIN_<product name>_YYYYMMDDTHHMMSS.log. The log file will contain the following information:
- What cell it ran on
- The date and time it was run
- SCAMIN method that was run, "Fixed Value" or "Radar Range" indicated by the "Method" tag in the header information
- What features were modified
- The LNAM (a unique identifier of a feature within an S-57 cell)
- The original SCAMIN value
- The updated SCAMIN value
- How long it took in HHMMSS
Example log entry:
Tool Name: SCAMIN Time: 11/22/2010 2:15:24 PM Cell Name: US5MD14M Method: Radar Range Feature Class Name: SoundingsP Subtype: SOUNDG_Soundings LNAM: US017135439912312 Original SCAMIN value: 79999 Updated SCAMIN value: 29999 SCAMIN ran successfully. Time Interval: 0 Hrs 0 Mins 12 Secs