{"text_format":"1","workbook":"xlsx","n_sheets":3,"sheets":["内外判定","内外判定2","お問合せ"],"not_rendered":{"charts":1,"images":1,"macros":1,"external_links":0,"defined_names":8,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"内外判定","index":0,"n_rows":53,"n_cols":15,"rows_kept":53,"cut":false,"hidden":false,"merged":[[36,9,36,10],[36,12,36,13],[12,0,12,14],[36,1,36,2],[36,4,36,5],[0,0,0,13],[11,0,11,14],[1,0,1,14],[2,0,2,14],[3,0,3,14],[4,0,4,14],[5,0,5,14],[6,0,6,14],[7,0,7,14],[8,0,8,14],[9,0,9,14],[10,0,10,14]]}
["座標点の図形内外判定（Winding Number Algorithm）"]
[]
["時系列に得られる経路の各時点での位置や、線分を折れ線近似した各節点などの座標点が多角形で表された図形の内か外かを判定するWinding Number Algorithmという方法について、以下に示す。"]
[]
["2次元平面の横右向きをx軸、縦上向きをy軸とする。"]
["図形は反時計まわりになぞった多角形polygonで表す。"]
["座標点nodeから右側に引いた水平線と多角形の各辺との交差状況に基づき、下記のルールで内外判定を行う。"]
[]
["ルール1. 上向きの辺は、開始点を含み終点を含まない。"]
["ルール2. 下向きの辺は、開始点を含まず終点を含む。"]
["ルール3. 水平線と辺の交点は、節点の右側になくてはならない。"]
["ルール4. 上向きの辺と交差する場合、+1する。"]
["ルール5. 下向きの辺と交差する場合、-1する。"]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[null,"マクロは標準モジュールのMoｄule6に入っている。",null,null,null,null,null,null,null,"マクロは標準モジュールのMoｄule6に入っている。"]
[null,{"$f":"exe(\"マクロ（座標点の図形内外判定）\",\"Inoutjudg\",B39:C43,E39:F44,G39:G44)","v":"マクロ（座標点の図形内外判定）"},null,null,null,null,null,null,null,{"$f":"exe(\"マクロ（座標点の図形内外判定）\",\"Inoutjudg\",J39:K53,M39:N42,O39:O42)","v":"マクロ（座標点の図形内外判定）"}]
["多角形","polygon",null,"座標点","node",null,"判定結果",null,"多角形","polygon",null,"座標点","node",null,"判定結果"]
["No.","x","y","No.","x","y","result",null,"No.","x","y","No.","x","y","result"]
[1,4,7,1,5,7,0,null,1,3,9,1,3,9,0]
[{"$f":"A39+1","v":2},1,2,{"$f":"D39+1","v":2},7,{"$f":"C41+(E40-B41)*(C42-C41)/(B42-B41)-0.0000000001","v":5.3333333332333339},1,null,{"$f":"I39+1","v":2},2,8,{"$f":"L39+1","v":2},4,5.5,2]
[{"$f":"A40+1","v":3},9,2,{"$f":"D40+1","v":3},5,5,1,null,{"$f":"I40+1","v":3},0,2,{"$f":"L40+1","v":3},2,5,1]
[4,6,7,4,2,{"$f":"C39+(E42-B39)*(C40-C39)/(B40-B39)+0.0000000001","v":3.6666666667666665},0,null,4,5.5,4,4,5,1,0]
[5,4,7,5,0,3,0,null,5,4,6]
[null,null,null,6,5,2,1,null,6,3,6]
[null,null,null,null,null,null,null,null,7,4,2]
[null,null,null,null,null,null,null,null,8,5,1]
[null,null,null,null,null,null,null,null,9,5.5,2]
[null,null,null,null,null,null,null,null,10,6,1]
[null,null,null,null,null,null,null,null,11,7,2]
[null,null,null,null,null,null,null,null,12,5.5,8]
[null,null,null,null,null,null,null,null,13,5,9]
[null,null,null,null,null,null,null,null,14,4,8]
[null,null,null,null,null,null,null,null,15,3,9]

{"sheet":"内外判定2","index":1,"n_rows":38,"n_cols":10,"rows_kept":38,"cut":false,"hidden":false,"merged":[[2,1,2,2],[2,4,2,5],[2,7,2,8]]}
["線分の多角形内外判定（Winding Number Algorithm）",null,null,null,null,"マクロは標準モジュールのMoｄule6に入っている。"]
[null,null,null,null,{"$f":"exe(\"マクロ（線分の多角形内外判定）\",\"Inoutjudg\",B5:C31,E5:F38,G5:G38)","v":"マクロ（線分の多角形内外判定）"},null,null,{"$f":"exe(\"マクロ（線分2の多角形内外判定）\",\"Inoutjudg\",B5:C31,H5:I17,J5:J17)","v":"マクロ（線分2の多角形内外判定）"}]
["多角形","polygon",null,"線分","node",null,"判定結果","線分2",null,"判定結果"]
["No.","x","y","No.","x","y","result","x","y","result"]
[1,-150,150,1,-150,150,0,-75,150,0]
[{"$f":"A5+1","v":2},-150,50,{"$f":"D5+1","v":2},-150,50,0,-75,100,1]
[3,-100,100,3,-100,100,1,-75,25,1]
[4,-100,0,4,-100,0,1,-75,-25,1]
[5,-150,50,5,-150,50,0,-75,-75,1]
[6,-150,-100,6,-150,-100,1,-75,-150,1]
[7,-200,-50,7,-200,-50,0,-25,-150,1]
[8,-200,-150,8,-200,-150,0,-25,-90,2]
[9,-150,-100,9,-150,-100,1,-25,-25,2]
[10,-150,-150,10,-150,-150,1,-25,25,1]
[11,0,-150,11,0,-150,0,-25,100,1]
[12,0,50,12,0,50,1,75,100,1]
[13,50,50,13,50,50,1,75,25,1]
[14,50,0,14,50,0,1]
[15,-50,0,15,-50,0,1]
[16,-50,-100,16,-50,-100,2]
[17,0,-100,17,0,-100,0]
[18,0,-50,18,0,-50,1]
[19,50,-50,19,50,-50,1]
[20,50,-100,20,50,-100,1]
[21,150,-100,21,100,-150,0]
[22,150,0,22,150,-100,0]
[23,100,0,23,150,0,0]
[24,100,50,24,100,0,0]
[25,150,0,25,100,50,1]
[26,150,150,26,150,0,0]
[27,-150,150,27,150,150,0]
[null,null,null,28,120,20,0]
[null,null,null,29,130,0,0]
[null,null,null,30,25,25,0]
[null,null,null,31,25,-75,0]
[null,null,null,32,-25,-75,2]
[null,null,null,33,-180,-100,1]
[null,null,null,34,-125,40,0]

{"sheet":"お問合せ","index":2,"n_rows":158,"n_cols":5,"rows_kept":158,"cut":false,"hidden":false,"merged":[[3,2,3,6]]}
[]
[null,"技術的なご質問のみお受けします。"]
[]
[null,null,"sxsijk@Gmail.com","sxsijk@Gmail.com"]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[null,null,null,null,{"$f":"C118-C$19","v":0}]
[null,null,null,null,{"$f":"IF(C119<0,C119+360,C119)-IF(C$20<0,C$20+360,C$20)","v":0}]
[null,null,null,null,{"$f":"C120-C$21","v":0}]
[]
[null,null,null,null,{"$f":"C122-C$15","v":0}]
[null,null,null,null,{"$f":"C123-C$16","v":0}]
[null,null,null,null,{"$f":"C124-C$17","v":0}]
[null,null,null,null,{"$f":"C125-C$18","v":0}]
[null,null,null,null,{"$f":"C126-C$19","v":0}]
[null,null,null,null,{"$f":"IF(C127<0,C127+360,C127)-IF(C$20<0,C$20+360,C$20)","v":0}]
[null,null,null,null,{"$f":"C128-C$21","v":0}]
[null,null,null,null,{"$f":"C129-C$22","v":0}]
[null,null,null,null,{"$f":"C130-C$23","v":0}]
[null,null,null,null,{"$f":"C131-C$24","v":0}]
[null,null,null,null,{"$f":"C132-C$25","v":0}]
[]
[]
[null,null,35,null,{"$f":"C135-C$15","v":35}]
[null,"λp",null,null,{"$f":"C136-C$16","v":0}]
[null,null,null,null,{"$f":"C137-C$17","v":0}]
[null,null,{"$f":"SQRT(((#REF!^2*COS(RADIANS(C135)))^2+(#REF!^2*SIN(RADIANS(C135)))^2)/(#REF!^2*(1-C$4*SIN(RADIANS(C135))^2)))","v":{"$error":"#REF!"}},null,{"$f":"C138-C$18","v":{"$error":"#REF!"}}]
[null,null,{"$f":"DEGREES(C141/C138)","v":{"$error":"#REF!"}},null,{"$f":"C139-C$23","v":{"$error":"#REF!"}}]
[null,null,null,null,{"$f":"C140-C$24","v":0}]
[null,null,null,null,{"$f":"C141-C$25","v":0}]
[null,null,null,null,{"$f":"IF(C142<0,C142+360,C142)-IF(C$20<0,C$20+360,C$20)","v":0}]
[null,null,null,null,{"$f":"C143-C$21","v":0}]
[null,null,{"$f":"DEGREES(ATAN2((1-C$4)*COS(RADIANS(C143)),SIN(RADIANS(C143))))","v":{"$error":"#VALUE!"}},null,{"$f":"C144-C$19","v":{"$error":"#VALUE!"}}]
[null,null,{"$f":"SQRT(((#REF!^2*COS(RADIANS(C144)))^2+(#REF!^2*SIN(RADIANS(C144)))^2)/(#REF!^2*(1-C$4*SIN(RADIANS(C144))^2)))","v":{"$error":"#REF!"}},null,{"$f":"C145-C$22","v":{"$error":"#REF!"}}]
[null,null,{"$f":"DEGREES(ACOS(COS(RADIANS(C$137))*COS(RADIANS(C143))*(COS(RADIANS(C$136))*COS(RADIANS(C142))+SIN(RADIANS(C$136))*SIN(RADIANS(C142)))+SIN(RADIANS(C$137))*SIN(RADIANS(C143))))","v":0},null,{"$f":"C146-C$23","v":0}]
[null,null,{"$f":"DEGREES(ATAN2(COS(RADIANS(C$137))*SIN(RADIANS(C143))-SIN(RADIANS(C$137))*COS(RADIANS(C143))*COS(RADIANS(C142-C$136)),COS(RADIANS(C143))*SIN(RADIANS(C142-C$136))))","v":{"$error":"#DIV/0!"}},null,{"$f":"C147-C$24","v":{"$error":"#DIV/0!"}}]
[null,null,{"$f":"SQRT(((C$138-C145)*COS(RADIANS(C146/2)))^2+(MAX(C$138,C145)*RADIANS(C146)-ABS(C$138-C145)*SIN(RADIANS(C146/2)))^2)","v":{"$error":"#REF!"}},null,{"$f":"C148-C$25","v":{"$error":"#REF!"}}]
["補正","θ＝θ+(d0-d)/r",{"$f":"C139+DEGREES((C141-C148)/C145)","v":{"$error":"#REF!"}},null,{"$f":"C149-C$23","v":{"$error":"#REF!"}}]
[null,null,{"$f":"C140","v":0},null,{"$f":"C150-C$24","v":0}]
[null,null,{"$f":"C141","v":0},null,{"$f":"C151-C$25","v":0}]
[null,null,null,null,{"$f":"IF(C152<0,C152+360,C152)-IF(C$20<0,C$20+360,C$20)","v":0}]
[null,null,null,null,{"$f":"C153-C$21","v":0}]
[null,null,{"$f":"DEGREES(ATAN2((1-C$4)*COS(RADIANS(C153)),SIN(RADIANS(C153))))","v":{"$error":"#VALUE!"}},null,{"$f":"C154-C$19","v":{"$error":"#VALUE!"}}]
[null,null,{"$f":"SQRT(((#REF!^2*COS(RADIANS(C154)))^2+(#REF!^2*SIN(RADIANS(C154)))^2)/(#REF!^2*(1-C$4*SIN(RADIANS(C154))^2)))","v":{"$error":"#REF!"}},null,{"$f":"C155-C$22","v":{"$error":"#REF!"}}]
[null,null,{"$f":"DEGREES(ACOS(COS(RADIANS(C$137))*COS(RADIANS(C153))*(COS(RADIANS(C$136))*COS(RADIANS(C152))+SIN(RADIANS(C$136))*SIN(RADIANS(C152)))+SIN(RADIANS(C$137))*SIN(RADIANS(C153))))","v":0},null,{"$f":"C156-C$23","v":0}]
[null,null,{"$f":"DEGREES(ATAN2(COS(RADIANS(C$137))*SIN(RADIANS(C153))-SIN(RADIANS(C$137))*COS(RADIANS(C153))*COS(RADIANS(C152-C$136)),COS(RADIANS(C153))*SIN(RADIANS(C152-C$136))))","v":{"$error":"#DIV/0!"}},null,{"$f":"C157-C$24","v":{"$error":"#DIV/0!"}}]
[null,null,{"$f":"SQRT(((C$138-C155)*COS(RADIANS(C156/2)))^2+(MAX(C$138,C155)*RADIANS(C156)-ABS(C$138-C155)*SIN(RADIANS(C156/2)))^2)","v":{"$error":"#REF!"}},null,{"$f":"C158-C$25","v":{"$error":"#REF!"}}]