PageSourceSearch

https://h3geo.org/assets/js/9bf41262.5f580e04.js

js h3geo.org collected 2026-09-24 08:41:26 UTC 31,785 bytes, 1 lines download raw bytes

1"use strict";(globalThis.webpackChunkh3_website||=[]).push([[5965],{3662(e,n,a){a.r(n),a.d(n,{assets:()=>o,contentTitle:()=>d,default:()=>g,frontMatter:()=>c,metadata:()=>l,toc:()=>u});const l=JSON.parse('{"id":"api/misc","title":"Miscellaneous H3 functions","description":"These functions include descriptions of the H3 grid system.","source":"@site/versioned_docs/version-3.x/api/misc.mdx","sourceDirName":"api","slug":"/api/misc","permalink":"/docs/3.x/api/misc","draft":false,"unlisted":false,"editUrl":"https://github.com/uber/h3/edit/master/website/docs/api/misc.mdx","tags":[],"version":"3.x","frontMatter":{"id":"misc","title":"Miscellaneous H3 functions","sidebar_label":"Miscellaneous","slug":"/api/misc"},"sidebar":"someSidebar","previous":{"title":"Unidirectional edges","permalink":"/docs/3.x/api/uniedge"},"next":{"title":"Bindings","permalink":"/docs/3.x/community/bindings"}}');var s=a(4848),r=a(8453),i=a(4865),t=a(9365);const c={id:"misc",title:"Miscellaneous H3 functions",sidebar_label:"Miscellaneous",slug:"/api/misc"},d=void 0,o={},u=[{value:"degsToRads",id:"degstorads",level:2},{value:"radsToDegs",id:"radstodegs",level:2},{value:"hexAreaKm2",id:"hexareakm2",level:2},{value:"hexAreaM2",id:"hexaream2",level:2},{value:"cellAreaM2",id:"cellaream2",level:2},{value:"cellAreaRads2",id:"cellarearads2",level:2},{value:"edgeLengthKm",id:"edgelengthkm",level:2},{value:"edgeLengthM",id:"edgelengthm",level:2},{value:"exactEdgeLengthKm",id:"exactedgelengthkm",level:2},{value:"exactEdgeLengthM",id:"exactedgelengthm",level:2},{value:"exactEdgeLengthRads",id:"exactedgelengthrads",level:2},{value:"numHexagons",id:"numhexagons",level:2},{value:"getRes0Indexes",id:"getres0indexes",level:2},{value:"res0IndexCount",id:"res0indexcount",level:2},{value:"getPentagonIndexes",id:"getpentagonindexes",level:2},{value:"pentagonIndexCount",id:"pentagonindexcount",level:2},{value:"pointDistKm",id:"pointdistkm",level:2},{value:"pointDistM",id:"pointdistm",level:2},{value:"pointDistRads",id:"pointdistrads",level:2}];function h(e){const n={admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:"These functions include descriptions of the H3 grid system."}),"\n",(0,s.jsx)(n.h2,{id:"degstorads",children:"degsToRads"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double degsToRads(double degrees);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsxs)(n.p,{children:["Use ",(0,s.jsx)(n.code,{children:"math.radians(degrees)"})," instead."]})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsxs)(n.p,{children:["Use ",(0,s.jsx)(n.code,{children:"java.lang.Math.toRadians(double degrees)"})," instead."]})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.degsToRads(degrees)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const degrees = 45;\n  return h3.degsToRads(degrees);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Converts degrees to radians."}),"\n",(0,s.jsx)(n.h2,{id:"radstodegs",children:"radsToDegs"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double radsToDegs(double radians);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsxs)(n.p,{children:["Use ",(0,s.jsx)(n.code,{children:"math.degrees(radians)"})," instead."]})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsxs)(n.p,{children:["Use ",(0,s.jsx)(n.code,{children:"java.lang.Math.toDegrees(double radians)"})," instead."]})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.radsToDegs(
1h)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const radians = 3.14159;\n  return h3.radsToDegs(radians);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Converts radians to degrees."}),"\n",(0,s.jsx)(n.h2,{id:"hexareakm2",children:"hexAreaKm2"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double hexAreaKm2(int res);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.hex_area(res, unit='km^2')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double hexArea(int res, AreaUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.hexArea(res, h3.UNITS.km2)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.hexArea(res, h3v3.UNITS.km2);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Average hexagon area in square kilometers at the given resolution."}),"\n",(0,s.jsx)(n.h2,{id:"hexaream2",children:"hexAreaM2"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double hexAreaM2(int res);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.hex_area(res, unit='m^2')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double hexArea(int res, AreaUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.hexArea(res, h3.UNITS.m2)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.hexArea(res, h3v3.UNITS.m2);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Average hexagon area in square meters at the given resolution."}),"\n",(0,s.jsx)(n.h2,{id:"cellaream2",children:"cellAreaM2"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double cellAreaM2(H3Index h);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.cell_area(h, unit='m^2')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double cellArea(long h3, AreaUnit unit);\nint cellArea(String h3Address, AreaUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.cellArea(h, h3.UNITS.m2)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const h = '85283473fffffff';\n  return h3v3.cellArea(h, h3v3.UNITS.m2);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Exact area of specific cell in square meters."}),"\n",(0,s.jsx)(n.h2,{id:"cellarearads2",children:"cellAreaRads2"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double cellAreaRads2(H3Index h);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.cell_area(h, unit='rads^2')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double cellArea(long h3, AreaUnit unit);\nint cellArea(String h3Address, AreaUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.cellArea(h, h3.UNITS.rads2)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const h = '85283473fffffff';\n  return h3v3.cellArea(h, h3v3.UNITS.rads2);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Exact area of specific cell in square radians."}),"\n",(0,s.jsx)(n.h2,{id:"edgelengthkm",children:"edgeLengthKm"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double edgeLengthKm(int res);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.edge_length(res, unit='km')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double edgeLength(int res, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.edgeLength(res, h3.UNITS.km)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.edgeLength(res, h3v3.UNITS.km);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Average hexagon edge length in kilometers at the given resolution."}),"\n",(0,s.jsx)(n.h2,{id:"edgelengthm",children:"edgeLengthM"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double edgeLengthM(int res);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.edge_length(res, unit='m')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double edgeLength(int res, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.edgeLength(res, h3.UNITS.m)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.edgeLength(res, h3v3.UNITS.m);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Average hexagon edge length in meters at the given resolution."}),"\n",(0,s.jsx)(n.h2,{id:"exactedgelengthkm",children:"exactEdgeLengthKm"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double exactEdgeLengthKm(H3Index edge);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.exact_edge_length(h, unit='km')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double exactEdgeLength(long h3, LengthUnit unit);\ndouble exactEdgeLength(String h3Address, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.exactEdgeLength(h3, h3.UNITS.km)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const h = '115283473fffffff';\n  return h3v3.exactEdgeLength(h, h3v3.UNITS.km);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Exact edge length of specific unidirectional edge in kilometers."}),"\n",(0,s.jsx)(n.h2,{id:"exactedgelengthm",children:"exactEdgeLengthM"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double exactEdgeLengthM(H3Index edge);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.exact_edge_length(h, unit='m')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double exactEdgeLength(long h3, LengthUnit unit);\ndouble exactEdgeLength(String h3Address, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.exactEdgeLength(h3, h3.UNITS.m)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const h = '115283473fffffff';\n  return h3v3.exactEdgeLength(h, h3v3.UNITS.m);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Exact edge length of specific unidirectional edge in meters."}),"\n",(0,s.jsx)(n.h2,{id:"exactedgelengthrads",children:"exactEdgeLengthRads"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double exactEdgeLengthRads(H3Index edge);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.exact_edge_length(h, unit='rads')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double exactEdgeLength(long h3, LengthUnit unit);\ndouble exactEdgeLength(String h3Address, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.exactEdgeLength(h3, h3.UNITS.rads)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const h = '115283473fffffff';\n  return h3v3.exactEdgeLength(h, h3v3.UNITS.rads);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Exact edge length of specific unidirectional edge in radians."}),"\n",(0,s.jsx)(n.h2,{id:"numhexagons",children:"numHexagons"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"int64_t numHexagons(int res);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.num_hexagons(res)\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"long numHexagons(int res);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.numHexagons(res)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.numHexagons(res);\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:"Number of unique H3 indexes at the given resolution."}),"\n",(0,s.jsx)(n.h2,{id:"getres0indexes",children:"getRes0Indexes"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"void getRes0Indexes(H3Index *out);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.get_res0_indexes(res)\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"Collection<Long> getRes0Indexes(int res);\nCollection<String> getRes0IndexesAddresses(int res);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.getRes0Indexes(res)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.getRes0Indexes(res);\n}\n"})})]})]}),"\n",(0,s.jsxs)(n.p,{children:["All the resolution 0 H3 indexes.\n",(0,s.jsx)(n.code,{children:"out"})," must be an array of at least size ",(0,s.jsx)(n.code,{children:"res0IndexCount()"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"res0indexcount",children:"res0IndexCount"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"int res0IndexCount(void);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsx)(n.p,{children:"This function exists for memory management and is not exposed."})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsx)(n.p,{children:"This function exists for memory management and is not exposed."})})}),(0,s.jsx)(t.A,{value:"javascript",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsx)(n.p,{children:"This function exists for memory management and is not exposed."})})})]}),"\n",(0,s.jsx)(n.p,{children:"Number of resolution 0 H3 indexes."}),"\n",(0,s.jsx)(n.h2,{id:"getpentagonindexes",children:"getPentagonIndexes"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"void getPentagonIndexes(int res, H3Index *out);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.get_pentagon_indexes(res)\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"Collection<Long> getPentagonIndexes(int res);\nCollection<String> getPentagonIndexesAddresses(int res);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.getPentagonIndexes(res)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const res = 5;\n  return h3v3.getPentagonIndexes(res);\n}\n"})})]})]}),"\n",(0,s.jsxs)(n.p,{children:["All the pentagon H3 indexes at the specified resolution.\n",(0,s.jsx)(n.code,{child
1ren:"out"})," must be an array of at least size ",(0,s.jsx)(n.code,{children:"pentagonIndexCount()"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"pentagonindexcount",children:"pentagonIndexCount"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"int pentagonIndexCount(void);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsx)(n.p,{children:"This function exists for memory management and is not exposed."})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsx)(n.p,{children:"This function exists for memory management and is not exposed."})})}),(0,s.jsx)(t.A,{value:"javascript",children:(0,s.jsx)(n.admonition,{type:"note",children:(0,s.jsx)(n.p,{children:"This function exists for memory management and is not exposed."})})})]}),"\n",(0,s.jsx)(n.p,{children:"Number of pentagon H3 indexes per resolution. This is always 12, but provided as a convenience."}),"\n",(0,s.jsx)(n.h2,{id:"pointdistkm",children:"pointDistKm"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double pointDistKm(const GeoCoord *a, const GeoCoord *b);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.point_dist(point1, point2, unit='km')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double pointDist(GeoCoord point1, GeoCoord point2, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.pointDist(point1, point2, h3.UNITS.km)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const point1 = [-10, 0];\n  const point2 = [10, 0];\n  return h3v3.pointDist(point1, point2, h3v3.UNITS.km)\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:'Gives the "great circle" or "haversine" distance between pairs of\nGeoCoord points (lat/lng pairs) in kilometers.'}),"\n",(0,s.jsx)(n.h2,{id:"pointdistm",children:"pointDistM"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double pointDistM(const GeoCoord *a, const GeoCoord *b);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.point_dist(point1, point2, unit='m')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double pointDist(GeoCoord point1, GeoCoord point2, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.pointDist(point1, point2, h3.UNITS.m)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const point1 = [-10, 0];\n  const point2 = [10, 0];\n  return h3v3.pointDist(point1, point2, h3v3.UNITS.m)\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:'Gives the "great circle" or "haversine" distance between pairs of\nGeoCoord points (lat/lng pairs) in meters.'}),"\n",(0,s.jsx)(n.h2,{id:"pointdistrads",children:"pointDistRads"}),"\n",(0,s.jsxs)(i.A,{groupId:"language",defaultValue:"c",values:[{label:"C",value:"c"},{label:"Python",value:"python"},{label:"Java",value:"java"},{label:"JavaScript (Live)",value:"javascript"}],children:[(0,s.jsx)(t.A,{value:"c",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-c",children:"double pointDistRads(const GeoCoord *a, const GeoCoord *b);\n"})})}),(0,s.jsx)(t.A,{value:"python",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-py",children:"h3.point_dist(point1, point2, unit='rads')\n"})})}),(0,s.jsx)(t.A,{value:"java",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-java",children:"double pointDist(GeoCoord point1, GeoCoord point2, LengthUnit unit);\n"})})}),(0,s.jsxs)(t.A,{value:"javascript",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"h3.pointDist(point1, point2, h3.UNITS.rads)\n"})}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",metastring:"live",live:!0,children:"function example() {\n  const point1 = [-10, 0];\n  const point2 = [10, 0];\n  return h3v3.pointDist(point1, point2, h3v3.UNITS.rads)\n}\n"})})]})]}),"\n",(0,s.jsx)(n.p,{children:'Gives the "great circle" or "haversine" distance between pairs of\nGeoCoord points (lat/lng pairs) in radians.'})]})}function g(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(h,{...e})}):h(e)}},9365(e,n,a){a.d(n,{A:()=>c});a(6540);var l=a(4164),s=a(7751);const r="tabItem_Ymn6";var i=a(4848);function t({children:e,className:n,hidden:a}){return(0,i.jsx)("div",{role:"tabpanel",className:(0,l.A)(r,n),hidden:a,children:e})}function c({children:e,className:n,value:a}){const{selectedValue:l,lazy:r}=(0,s.uc)(),c=a===l;return!c&&r?null:(0,i.jsx)(t,{className:n,hidden:!c,children:e})}},4865(e,n,a){a.d(n,{A:()=>x});a(6540);var l=a(4164),s=a(7559),r=a(7751),i=a(3104),t=a(2303);const c="tabList__CuJ",d="tabItem_LNqP";var o=a(4848);function u({className:e}){const{selectedValue:n,selectValue:a,tabValues:s,block:t}=(0,r.uc)(),c=[],{blockElementScrollPositionUntilNextRender:u}
1=(0,i.a_)(),h=e=>{const l=e.currentTarget,r=c.indexOf(l),i=s[r].value;i!==n&&(u(l),a(i))},g=e=>{let n=null;switch(e.key){case"Enter":h(e);break;case"ArrowRight":{const a=c.indexOf(e.currentTarget)+1;n=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(e.currentTarget)-1;n=c[a]??c[c.length-1];break}}n?.focus()};return(0,o.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.A)("tabs",{"tabs--block":t},e),children:s.map(({value:e,label:a,attributes:s})=>(0,o.jsx)("li",{role:"tab",tabIndex:n===e?0:-1,"aria-selected":n===e,ref:e=>{c.push(e)},onKeyDown:g,onClick:h,...s,className:(0,l.A)("tabs__item",d,s?.className,{"tabs__item--active":n===e}),children:a??e},e))})}function h({children:e}){return(0,o.jsx)("div",{className:"margin-top--md",children:e})}function g({className:e,children:n}){return(0,o.jsxs)("div",{className:(0,l.A)(s.G.tabs.container,"tabs-container",c),children:[(0,o.jsx)(u,{className:e}),(0,o.jsx)(h,{children:n})]})}function x(e){const n=(0,t.A)(),a=(0,r.OC)(e);return(0,o.jsx)(r.O_,{value:a,children:(0,o.jsx)(g,{className:e.className,children:(0,r.vT)(e.children)})},String(n))}},7751(e,n,a){a.d(n,{OC:()=>x,O_:()=>p,uc:()=>j,vT:()=>
1o});var l=a(6540),s=a(6347),r=a(205),i=a(7485),t=a(679),c=a(1682),d=a(4848);function o(e){return l.Children.toArray(e).filter(e=>"\n"!==e)}function u(e){const{values:n,children:a}=e;return(0,l.useMemo)(()=>{const e=n??function(e){return l.Children.toArray(e).flatMap(e=>{if(!e)return[];if((0,l.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return[e];const n="string"==typeof e.type?e.type:e.type.name;throw new Error(`Docusaurus error: Bad <Tabs> child <${n}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.\nIf you do not want to pass on a "value" prop to the direct children of <Tabs>, you can also pass an explicit <Tabs values={...}> prop.`)}).map(({props:{value:e,label:n,attributes:a,default:l}})=>({value:e,label:n,attributes:a,default:l}))}(a);return function(e){const n=(0,c.XI)(e,(e,n)=>e.value===n.value);if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map(e=>`'${e.value}'`).join(", ")}" found in <Tabs>. Every value needs to be unique.`)}(e),e},[n,a])}function h({value:e,tabValues:n}){return n.some(n=>n.value===e)}function g({queryString:e=!1,groupId:n}){const a=(0,s.W6)(),r=function({queryString:e=!1,groupId:n}){if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!n)throw new Error('Docusaurus error: The <Tabs> component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:e,groupId:n});return[(0,i.aZ)(r),(0,l.useCallback)(e=>{if(!r)return;const n=new URLSearchParams(a.location.search);n.set(r,e),a.replace({...a.location,search:n.toString()})},[r,a])]}function x(e){const{defaultValue:n,queryString:a=!1,groupId:s}=e,i=u(e),[c,d]=(0,l.useState)(()=>function({defaultValue:e,tabValues:n}){if(0===n.length)throw new Error("Docusaurus error: the <Tabs> component requires at least one <TabItem> children component");if(e){if(!h({value:e,tabValues:n}))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${n.map(e=>e.value).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const a=n.find(e=>e.default)??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:n,tabValues:i})),[o,x]=g({queryString:a,groupId:s}),[v,j]=function({groupId:e}){const n=function(e){return e?`docusaurus.tab.${e}`:null}(e),[a,s]=(0,t.Dv)(n);return[a,(0,l.useCallback)(e=>{n&&s.set(e)},[n,s])]}({groupId:s}),p=(()=>{const e=o??v;return h({value:e,tabValues:i})?e:null})();(0,r.A)(()=>{p&&d(p)},[p]);return{selectedValue:c,selectValue:(0,l.useCallback)(e=>{if(!h({value:e,tabValues:i}))throw new Error(`Can't select invalid tab value=${e}`);d(e),x(e),j(e)},[x,j,i]),tabValues:i,lazy:e.lazy??!1,block:e.block??!1}}const v=(0,l.createContext)(null);function j(){const e=l.useContext(v);if(!e)throw new Error("useTabsContext() must be used within a Tabs component");return e}function p(e){return(0,d.jsx)(v.Provider,{value:e.value,children:e.children})}},8453(e,n,a){a.d(n,{R:()=>i,x:()=>t});var l=a(6540);const s={},r=l.createContext(s);function i(e){const n=l.useContext(r);return l.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),l.createElement(r.Provider,{value:n},e.children)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.