Antipodal Land Area CalculationCombine Stereographic “Entity” Plot of Arctic Sea with Contour PlotAdministrative Divisions bordering a geographic region (e.g. an ocean)Can anyone explain this weird Plot3D error?RegionIntersection and area on GeoPosition polygonsRotations of a numberUse Wolfram curated databases to determine how many randomly chosen people are needed to have a 50% chance two live in the same or adjacent states?Geolocate multiple IP addressesWill my procedure be correct?How to calculate linear conflicts on a board?Sea Level Rise - How to mask on relief plot
What is the philosophical significance of speech acts/implicature?
Is there a way to generate a list of distinct numbers such that no two subsets ever have an equal sum?
What is causing the white spot to appear in some of my pictures
How did Captain America manage to do this?
Is it idiomatic to construct against `this`
Can someone publish a story that happened to you?
Is there really no use for MD5 anymore?
Get consecutive integer number ranges from list of int
Do I have an "anti-research" personality?
How can Republicans who favour free markets, consistently express anger when they don't like the outcome of that choice?
Was there a Viking Exchange as well as a Columbian one?
Two field separators (colon and space) in awk
Which big number is bigger?
555 timer FM transmitter
Minor Revision with suggestion of an alternative proof by reviewer
Is Diceware more secure than a long passphrase?
How does Captain America channel this power?
Is there any official lore on the Far Realm?
How to denote matrix elements succinctly?
How do I deal with a coworker that keeps asking to make small superficial changes to a report, and it is seriously triggering my anxiety?
Dynamic SOQL query relationship with field visibility for Users
A Note on N!
How to pronounce 'c++' in Spanish
What makes accurate emulation of old systems a difficult task?
Antipodal Land Area Calculation
Combine Stereographic “Entity” Plot of Arctic Sea with Contour PlotAdministrative Divisions bordering a geographic region (e.g. an ocean)Can anyone explain this weird Plot3D error?RegionIntersection and area on GeoPosition polygonsRotations of a numberUse Wolfram curated databases to determine how many randomly chosen people are needed to have a 50% chance two live in the same or adjacent states?Geolocate multiple IP addressesWill my procedure be correct?How to calculate linear conflicts on a board?Sea Level Rise - How to mask on relief plot
$begingroup$
Mathematica 12 does antipodal graphics! See here for my treatment of antipodal New Zealand. Most of the Earth's above-sea-level land will have ocean at its antipode. Is there a way to calculate what percentage of above-sea-level land will also have above-sea-level land at its antipode?
geography recreational-mathematics version-12
$endgroup$
add a comment |
$begingroup$
Mathematica 12 does antipodal graphics! See here for my treatment of antipodal New Zealand. Most of the Earth's above-sea-level land will have ocean at its antipode. Is there a way to calculate what percentage of above-sea-level land will also have above-sea-level land at its antipode?
geography recreational-mathematics version-12
$endgroup$
add a comment |
$begingroup$
Mathematica 12 does antipodal graphics! See here for my treatment of antipodal New Zealand. Most of the Earth's above-sea-level land will have ocean at its antipode. Is there a way to calculate what percentage of above-sea-level land will also have above-sea-level land at its antipode?
geography recreational-mathematics version-12
$endgroup$
Mathematica 12 does antipodal graphics! See here for my treatment of antipodal New Zealand. Most of the Earth's above-sea-level land will have ocean at its antipode. Is there a way to calculate what percentage of above-sea-level land will also have above-sea-level land at its antipode?
geography recreational-mathematics version-12
geography recreational-mathematics version-12
edited Apr 20 at 16:10
Cassini
3,70852337
3,70852337
asked Apr 19 at 12:36
Hans HavermannHans Havermann
656
656
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
Yes, this is possible with a little faff.
What we want to do is get the RegionUnion of all the countries the antipode intersects with, and then intersect the antipode with that region, and get the remaining area.
Let's use New Zealand as an example.
ant = GeoAntipode[Polygon@Entity["Country", "NewZealand"]]
Now, we can get the countries that this antipode intersects using GeoEntities
:
GeoEntities[ant, "Country"]
Entity["Country", "Portugal"], Entity["Country", "Spain"],
Entity["Country", "Gibraltar"], Entity["Country", "Morocco"]
Now, it seems like there's a bit of a bug with Gibraltar in my solution, so I've removed it. I'm not sure what causes it, but including Gibraltar deletes Morocco from the Region (don't tell the British).
countries =
RegionUnion @@ (EntityValue[Entity["Country", "Portugal"],
Entity["Country", "Spain"], Entity["Country", "Morocco"],
"Polygon"] /. GeoPosition[x_] -> x)
(We need to do GeoPosition[x_]->x
to convert the GeoPositions into regular points, for Region
calculations)
Now we intersect our antipode with this region:
int = RegionIntersection[ant /. GeoPosition[x_] -> x, countries]
(This can take a little time depending on the complexity of your polygons)
We can now convert back to GeoPositions:
geoint = MeshPrimitives[int, 2] /. Polygon[x_] -> Polygon[GeoPosition[x]]
and check the graphics to make sure we got it right:
GeoGraphics[geoint]
Finally, to get the actual area of intersections:
GeoArea[geoint] // Total
Quantity[1.58773[CenterDot]10^11, ("Meters")^2]
We can see that we are in the right ballpark:
UnitConvert[GeoArea[Entity["Country", "NewZealand"]]]
Quantity[2.64511[CenterDot]10^11, ("Meters")^2]
$endgroup$
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "387"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f195591%2fantipodal-land-area-calculation%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Yes, this is possible with a little faff.
What we want to do is get the RegionUnion of all the countries the antipode intersects with, and then intersect the antipode with that region, and get the remaining area.
Let's use New Zealand as an example.
ant = GeoAntipode[Polygon@Entity["Country", "NewZealand"]]
Now, we can get the countries that this antipode intersects using GeoEntities
:
GeoEntities[ant, "Country"]
Entity["Country", "Portugal"], Entity["Country", "Spain"],
Entity["Country", "Gibraltar"], Entity["Country", "Morocco"]
Now, it seems like there's a bit of a bug with Gibraltar in my solution, so I've removed it. I'm not sure what causes it, but including Gibraltar deletes Morocco from the Region (don't tell the British).
countries =
RegionUnion @@ (EntityValue[Entity["Country", "Portugal"],
Entity["Country", "Spain"], Entity["Country", "Morocco"],
"Polygon"] /. GeoPosition[x_] -> x)
(We need to do GeoPosition[x_]->x
to convert the GeoPositions into regular points, for Region
calculations)
Now we intersect our antipode with this region:
int = RegionIntersection[ant /. GeoPosition[x_] -> x, countries]
(This can take a little time depending on the complexity of your polygons)
We can now convert back to GeoPositions:
geoint = MeshPrimitives[int, 2] /. Polygon[x_] -> Polygon[GeoPosition[x]]
and check the graphics to make sure we got it right:
GeoGraphics[geoint]
Finally, to get the actual area of intersections:
GeoArea[geoint] // Total
Quantity[1.58773[CenterDot]10^11, ("Meters")^2]
We can see that we are in the right ballpark:
UnitConvert[GeoArea[Entity["Country", "NewZealand"]]]
Quantity[2.64511[CenterDot]10^11, ("Meters")^2]
$endgroup$
add a comment |
$begingroup$
Yes, this is possible with a little faff.
What we want to do is get the RegionUnion of all the countries the antipode intersects with, and then intersect the antipode with that region, and get the remaining area.
Let's use New Zealand as an example.
ant = GeoAntipode[Polygon@Entity["Country", "NewZealand"]]
Now, we can get the countries that this antipode intersects using GeoEntities
:
GeoEntities[ant, "Country"]
Entity["Country", "Portugal"], Entity["Country", "Spain"],
Entity["Country", "Gibraltar"], Entity["Country", "Morocco"]
Now, it seems like there's a bit of a bug with Gibraltar in my solution, so I've removed it. I'm not sure what causes it, but including Gibraltar deletes Morocco from the Region (don't tell the British).
countries =
RegionUnion @@ (EntityValue[Entity["Country", "Portugal"],
Entity["Country", "Spain"], Entity["Country", "Morocco"],
"Polygon"] /. GeoPosition[x_] -> x)
(We need to do GeoPosition[x_]->x
to convert the GeoPositions into regular points, for Region
calculations)
Now we intersect our antipode with this region:
int = RegionIntersection[ant /. GeoPosition[x_] -> x, countries]
(This can take a little time depending on the complexity of your polygons)
We can now convert back to GeoPositions:
geoint = MeshPrimitives[int, 2] /. Polygon[x_] -> Polygon[GeoPosition[x]]
and check the graphics to make sure we got it right:
GeoGraphics[geoint]
Finally, to get the actual area of intersections:
GeoArea[geoint] // Total
Quantity[1.58773[CenterDot]10^11, ("Meters")^2]
We can see that we are in the right ballpark:
UnitConvert[GeoArea[Entity["Country", "NewZealand"]]]
Quantity[2.64511[CenterDot]10^11, ("Meters")^2]
$endgroup$
add a comment |
$begingroup$
Yes, this is possible with a little faff.
What we want to do is get the RegionUnion of all the countries the antipode intersects with, and then intersect the antipode with that region, and get the remaining area.
Let's use New Zealand as an example.
ant = GeoAntipode[Polygon@Entity["Country", "NewZealand"]]
Now, we can get the countries that this antipode intersects using GeoEntities
:
GeoEntities[ant, "Country"]
Entity["Country", "Portugal"], Entity["Country", "Spain"],
Entity["Country", "Gibraltar"], Entity["Country", "Morocco"]
Now, it seems like there's a bit of a bug with Gibraltar in my solution, so I've removed it. I'm not sure what causes it, but including Gibraltar deletes Morocco from the Region (don't tell the British).
countries =
RegionUnion @@ (EntityValue[Entity["Country", "Portugal"],
Entity["Country", "Spain"], Entity["Country", "Morocco"],
"Polygon"] /. GeoPosition[x_] -> x)
(We need to do GeoPosition[x_]->x
to convert the GeoPositions into regular points, for Region
calculations)
Now we intersect our antipode with this region:
int = RegionIntersection[ant /. GeoPosition[x_] -> x, countries]
(This can take a little time depending on the complexity of your polygons)
We can now convert back to GeoPositions:
geoint = MeshPrimitives[int, 2] /. Polygon[x_] -> Polygon[GeoPosition[x]]
and check the graphics to make sure we got it right:
GeoGraphics[geoint]
Finally, to get the actual area of intersections:
GeoArea[geoint] // Total
Quantity[1.58773[CenterDot]10^11, ("Meters")^2]
We can see that we are in the right ballpark:
UnitConvert[GeoArea[Entity["Country", "NewZealand"]]]
Quantity[2.64511[CenterDot]10^11, ("Meters")^2]
$endgroup$
Yes, this is possible with a little faff.
What we want to do is get the RegionUnion of all the countries the antipode intersects with, and then intersect the antipode with that region, and get the remaining area.
Let's use New Zealand as an example.
ant = GeoAntipode[Polygon@Entity["Country", "NewZealand"]]
Now, we can get the countries that this antipode intersects using GeoEntities
:
GeoEntities[ant, "Country"]
Entity["Country", "Portugal"], Entity["Country", "Spain"],
Entity["Country", "Gibraltar"], Entity["Country", "Morocco"]
Now, it seems like there's a bit of a bug with Gibraltar in my solution, so I've removed it. I'm not sure what causes it, but including Gibraltar deletes Morocco from the Region (don't tell the British).
countries =
RegionUnion @@ (EntityValue[Entity["Country", "Portugal"],
Entity["Country", "Spain"], Entity["Country", "Morocco"],
"Polygon"] /. GeoPosition[x_] -> x)
(We need to do GeoPosition[x_]->x
to convert the GeoPositions into regular points, for Region
calculations)
Now we intersect our antipode with this region:
int = RegionIntersection[ant /. GeoPosition[x_] -> x, countries]
(This can take a little time depending on the complexity of your polygons)
We can now convert back to GeoPositions:
geoint = MeshPrimitives[int, 2] /. Polygon[x_] -> Polygon[GeoPosition[x]]
and check the graphics to make sure we got it right:
GeoGraphics[geoint]
Finally, to get the actual area of intersections:
GeoArea[geoint] // Total
Quantity[1.58773[CenterDot]10^11, ("Meters")^2]
We can see that we are in the right ballpark:
UnitConvert[GeoArea[Entity["Country", "NewZealand"]]]
Quantity[2.64511[CenterDot]10^11, ("Meters")^2]
answered Apr 19 at 13:52
Carl LangeCarl Lange
5,67411344
5,67411344
add a comment |
add a comment |
Thanks for contributing an answer to Mathematica Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f195591%2fantipodal-land-area-calculation%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown