예제 #1
0
        /*-------------------------------------------------------------------------
         * 선그리기
         * 100단위の선となる
         * ---------------------------------------------------------------------------*/
        static public void DrawLines100(gvt_lib lib)
        {
            lib.loop_image.EnumDrawCallBack(new LoopXImage.DrawHandler(draw_lines100_proc), 0);

            // 세로방향は1회の그리기でよい
            LoopXImage image  = lib.loop_image;
            Vector2    size   = image.Device.client_size;
            Vector2    offset = image.GetDrawOffset();

            int index = 0;

            for (float y = 0; y < def.GAME_HEIGHT; y += 100, index++)
            {
                // 지도좌표に변환
                Vector2 pos0 = transform.game_pos2_map_pos(new Vector2(0, y), image);
                Vector2 pos  = image.GlobalPos2LocalPos(pos0, offset);

                if (index >= 10)
                {
                    index = 0;
                }

                if (pos.Y < 0)
                {
                    continue;
                }
                if (pos.Y >= size.Y)
                {
                    continue;
                }

                int color = (index == 0)? Color.FromArgb(128, 0, 0, 0).ToArgb(): Color.FromArgb(128, 128, 128, 128).ToArgb();
                image.Device.DrawLine(new Vector3(0, pos.Y, 0.79f), new Vector2(size.X, pos.Y), color);
            }
        }
예제 #2
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public find_form2(gvt_lib lib, GvoDatabase db, spot _spot, item_window _item_window)
        {
            m_lib         = lib;
            m_db          = db;
            m_spot        = _spot;
            m_item_window = _item_window;
            m_gpos        = new Point(-1, -1);

            m_sorter = new ListViewItemSorter();

            InitializeComponent();

            Useful.SetFontMeiryo(this, def.MEIRYO_POINT);

            m_now_find = false;

            // tooltip
            toolTip1.AutoPopDelay = 30 * 1000;                                  // 30秒表示
            toolTip1.BackColor    = Color.LightYellow;

            // 各ページの初期化
            init_page1();
            init_page2();
            init_page3();
        }
예제 #3
0
        /*-------------------------------------------------------------------------
         * 線描画
         * 1000刻みでの線となる
         * ---------------------------------------------------------------------------*/
        static public void DrawLines(gvt_lib lib)
        {
            lib.loop_image.EnumDrawCallBack(new LoopXImage.DrawHandler(draw_lines_proc), 0);

            // 縦方向は1回の描画でよい
            LoopXImage image  = lib.loop_image;
            Vector2    size   = image.Device.client_size;
            Vector2    offset = image.GetDrawOffset();

            int index = 0;

            for (float y = 0; y < def.GAME_HEIGHT; y += 1000, index++)
            {
                // 地図座標に変換
                Vector2 pos0 = transform.game_pos2_map_pos(new Vector2(0, y), image);
                Vector2 pos  = image.GlobalPos2LocalPos(pos0, offset);

                if (pos.Y < 0)
                {
                    continue;
                }
                if (pos.Y >= size.Y)
                {
                    continue;
                }

                image.Device.DrawLine(new Vector3(0, pos.Y, 0.79f), new Vector2(size.X, pos.Y), Color.FromArgb(128, 0, 0, 0).ToArgb());
            }
        }
예제 #4
0
        /*-------------------------------------------------------------------------
         * 위도, 경도그리기
         * 화면の상と우に그리기される
         * ---------------------------------------------------------------------------*/
        static public void DrawPoints(gvt_lib lib)
        {
            d3d_systemfont font = lib.device.systemfont;

            font.Begin();
            lib.device.device.RenderState.ZBufferEnable = false;
            lib.loop_image.EnumDrawCallBack(new LoopXImage.DrawHandler(draw_points_proc), 0);

            // 세로방향は1회の그리기でよい
            Vector2 size   = lib.loop_image.Device.client_size;
            Vector2 offset = lib.loop_image.GetDrawOffset();

            for (float y = 0; y < def.GAME_HEIGHT; y += 1000)
            {
                Vector2 pos0 = transform.game_pos2_map_pos(new Vector2(0, y), lib.loop_image);
                Vector2 pos  = lib.loop_image.GlobalPos2LocalPos(pos0, offset);

                Rectangle rect = font.MeasureText(y.ToString());

                pos.Y -= 5;
                if (pos.Y + (rect.Height + 4) < 0)
                {
                    continue;
                }
                if (pos.Y >= size.Y)
                {
                    continue;
                }

                lib.device.DrawFillRect(new Vector3(size.X - (rect.Width) - 2, pos.Y - 1, 0.1f), new Vector2(rect.Width + 2 * 2, rect.Height), Color.FromArgb(220, 100, 100, 100).ToArgb());
                font.DrawTextR(y.ToString(), (int)size.X, (int)pos.Y, Color.White);
            }
            font.End();
            lib.device.device.RenderState.ZBufferEnable = true;
        }
예제 #5
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public gvo_capture(gvt_lib lib)
        {
            m_lib = lib;

            // キャプチャ用ビットマップを作成する
            m_capture1 = new capture_image(64, 24);
            m_capture2 = new capture_image(128, 128);

            // 解析結果初期化
            m_point        = new Point(-1, -1);
            m_days         = -1;
            m_angle        = -1;
            m_angle_vector = new Vector2(0, 0);

            // キャプチャモード
            capture_mode = mode.xp;

            // テーブル生成用調整値
            m_factor  = 36f;
            m_angle_x = 31.5f;
            m_l       = 54f;

            // コンパスからの角度算出用テーブルを作成する
            create_compass_tbl();
            // 調整テーブルの作成
            create_ajust_compass_tbl();

            m_debug_texture  = null;
            m_debug_texture2 = null;
        }
예제 #6
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public sea_routes_form2(gvt_lib lib, GvoDatabase db)
        {
            m_lib = lib;
            m_db  = db;

            InitializeComponent();

            Useful.SetFontMeiryo(this, def.MEIRYO_POINT);

            m_disable_update_select = false;

            // tooltip
            toolTip1.AutoPopDelay = 30 * 1000;                                  // 30秒表示
            toolTip1.BackColor    = Color.LightYellow;

            // ViewとDBを関連付けておく
            m_view1 = new list_view_db(listView1, m_db.SeaRoute.searoutes);
            m_view2 = new list_view_db(listView2, m_db.SeaRoute.favorite_sea_routes);
            m_view3 = new list_view_db(listView3, m_db.SeaRoute.trash_sea_routes);

            // 各ページの初期化
            init_page1();
            init_page2();
            init_page3();
        }
예제 #7
0
        private d3d_writable_vb_with_index m_sea_names_vb;        // 여름용 해역명

        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public draw_infonames(gvt_lib lib, GvoWorldInfo world)
        {
            m_lib   = lib;
            m_world = world;

            m_device = lib.device.device;

            // 쉐이더사용時
            m_is_create_buffers = false;
            m_is_error          = false;

            m_icons1_vb = null;
            m_icons2_vb = null;
            m_icons3_vb = null;

            m_city_names1_vb = null;
            m_city_names2_vb = null;
            m_city_names3_vb = null;

            m_shore_names_vb = null;
            m_land_names_vb  = null;

            m_sea_icons1_vb = null;
            m_sea_icons2_vb = null;
            m_sea_names_vb  = null;
        }
예제 #8
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public WebIcons(gvt_lib lib)
        {
            m_lib = lib;

            m_list       = new List <Data>();
            m_draw_list  = new List <DataListBB>();
            m_draw_flags = 0;
        }
예제 #9
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public map_mark(gvt_lib lib, string fname)
        {
            m_lib   = lib;
            m_datas = new hittest_list();

            // 읽기
            load(fname);
        }
예제 #10
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public spot(gvt_lib lib, GvoWorldInfo world)
        {
            m_device     = lib.device;
            m_loop_image = lib.loop_image;
            m_icons      = lib.icons;
            m_world      = world;

            m_spots     = new List <GvoWorldInfo.Info>();
            m_spot_list = new List <spot_once>();
            m_spot_type = type.none;
        }
예제 #11
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public ShareRoutes(gvt_lib lib)
        {
            m_lib = lib;

            m_share1     = new List <ShareShip>();
            m_share2     = new List <ShareShip>();
            m_share_bb1  = new List <ShareShipListBB>();
            m_share_bb2  = new List <ShareShipListBB>();
            m_share_side = false;
            m_req_textured_font_reflesh = false;
            m_network_access_count      = 0;
        }
예제 #12
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public GvoDatabase(gvt_lib lib)
        {
            m_lib = lib;

            // 季節チェック
            m_season = new gvo_season();

            // 世界の情報
            m_world_info = new GvoWorldInfo(lib,
                                            m_season,
                                            def.WORLDINFOS_FULLNAME,
                                            def.MEMO_PATH);

            // アイテムデータベース
            m_item_database = new ItemDatabaseCustom(def.ITEMDB_FULLNAME);

            // 船パーツ
            m_ship_parts_database = new ShipPartsDataBase(def.SHIP_PARTS_FULLNAME);
            m_item_database.MergeShipPartsDatabase(m_ship_parts_database);

            // 速度
            m_speed = new speed_calculator(def.GAME_WIDTH);

            // 航路図
            m_searoute = new SeaRoutes(lib,
                                       def.SEAROUTE_FULLFNAME,
                                       def.FAVORITE_SEAROUTE_FULLFNAME,
                                       def.TRASH_SEAROUTE_FULLFNAME);

            // @web icons
            m_web_icons = new WebIcons(lib);
            // メモアイコン
            m_map_mark = new map_mark(lib, def.MEMO_ICONS_FULLFNAME);
            // 航路共有
            m_share_routes = new ShareRoutes(lib);
            // 画面キャプチャ
            m_capture = new gvo_capture(lib);

            // 利息からの経過日数
            m_interest_days = new interest_days(lib.setting);
            // 造船日数管理
            m_build_ship_counter = new gvo_build_ship_counter(lib.setting);

            // 危険海域変動システム
            m_sea_area = new sea_area(lib, def.SEAAREA_FULLFNAME);

            // ログ解析
            m_gvochat = new gvo_chat(m_sea_area);
            // 1度ログ解析をしておく
            // 解析内容は捨てる
            m_gvochat.AnalyzeNewestChatLog();
            m_gvochat.ResetAll();
        }
예제 #13
0
        private d3d_writable_vb_with_index m_sea_names2_vb;                                     // 冬用海域名

        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public draw_infonames(gvt_lib lib, GvoWorldInfo world)
        {
            m_lib   = lib;
            m_world = world;

            // シェーダ使用時
            m_is_create_buffers = false;
            m_is_error          = false;
            m_icons1_vb         = null;
            m_city_names1_vb    = null;
            m_icons2_vb         = null;
            m_city_names2_vb    = null;

            m_sea_names1_vb = null;
            m_sea_names2_vb = null;
        }
예제 #14
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public GvoDatabase(gvt_lib lib)
        {
            m_lib = lib;

            // 季節チェック
            m_season = new gvo_season();

            // 세계の정보
            m_world_info = new GvoWorldInfo(lib, m_season, def.WORLDINFOS_FULLNAME, def.MEMO_PATH);

            // 아이템DB
            m_item_database = new ItemDatabaseCustom(def.ITEMDB_FULLNAME);

            // 선박 재료
            m_ship_parts_database = new ShipPartsDataBase(def.SHIP_PARTS_FULLNAME);
            m_item_database.MergeShipPartsDatabase(m_ship_parts_database);

            // 속도
            m_speed = new speed_calculator(def.GAME_WIDTH);

            // 항로도
            m_searoute = new SeaRoutes(lib, def.SEAROUTE_FULLFNAME, def.FAVORITE_SEAROUTE_FULLFNAME, def.TRASH_SEAROUTE_FULLFNAME);

            // @web icons
            m_web_icons = new WebIcons(lib);
            // 메모아이콘
            m_map_mark = new map_mark(lib, def.MEMO_ICONS_FULLFNAME);
            // 항로공유
            m_share_routes = new ShareRoutes(lib);
            // 화면캡처
            m_capture = new gvo_capture(lib);

            // 이자からの경과일수
            m_interest_days = new interest_days(lib.setting);
            // 조선일수관리
            m_build_ship_counter = new gvo_build_ship_counter(lib.setting);

            // 위험해역변동시스템
            m_sea_area = new sea_area(lib, def.SEAAREA_FULLFNAME);

            // 로그분석
            m_gvochat = new gvo_chat(m_sea_area);
            // 1도로그분석をしておく
            // 분석내용は捨てる
            m_gvochat.AnalyzeNewestChatLog();
            m_gvochat.ResetAll();
        }
예제 #15
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public setting_window(gvt_lib lib, GvoDatabase db, gvtrademap_cs_form form)
            : base(lib.device, new Vector2(WINDOW_POS_X, WINDOW_POS_Y), new Vector2(WINDOW_SIZE_X, WINDOW_SIZE_Y), WINDOW_POS_Z)
        {
            base.title = "設定ウインドウ";

            m_form = form;
            m_lib  = lib;
            m_db   = db;

            // アイテム追加
            m_hittest_list = new hittest_list();

            // 設定
            m_hittest_list.Add(new hittest());
            // 設定ボタン
            m_hittest_list.Add(new hittest());
        }
예제 #16
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/

        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public gvo_capture(gvt_lib lib)
            : base()
        {
            m_lib = lib;

            m_debug_texture  = null;
            m_debug_texture2 = null;

            // テーブル生成用調整値
            m_factor  = 36f;
            m_angle_x = 31.5f;
            m_l       = 54f;

            // コンパスからの角度算出用テーブルを作成する
//			create_compass_tbl();
            // 調整テーブルの作成
//			create_ajust_compass_tbl();
        }
예제 #17
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/

        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public gvo_capture(gvt_lib lib)
            : base()
        {
            m_lib = lib;

            m_debug_texture  = null;
            m_debug_texture2 = null;

            // 테이블生成용조정値
            m_factor  = 36f;
            m_angle_x = 31.5f;
            m_l       = 54f;

            // 나침반からの각도산출용테이블을작성함
            //			create_compass_tbl();
            // 조정테이블の작성
            //			create_ajust_compass_tbl();
        }
예제 #18
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public myship_info(gvt_lib lib, GvoDatabase db)
        {
            m_lib = lib;
            m_db  = db;

            m_pos           = new Point(-1, -1);
            m_angle         = -1;
            m_is_in_the_sea = false;
            // 到達予想アニメーション用速度
//			m_show_speed			= 0;

            m_server_service     = new gvo_server_service();                                    // ナビゲーションクライアントからの受信
            m_capture_timer      = new DateTimer();                                             // キャプチャ間隔用
            m_expect_pos_timer   = new DateTimer();                                             // 予想位置計算用
            m_expect_delay_timer = new DateTimer();                                             // 予想位置消去用ディレイタイマ

            m_capture_sucess = false;

            // 到達予想位置をリセット
            reset_expect();
        }
예제 #19
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public myship_info(gvt_lib lib, GvoDatabase db)
        {
            m_lib = lib;
            m_db  = db;

            m_pos           = new Point(-1, -1);
            m_angle         = -1;
            m_is_in_the_sea = false;
            // 도달예상アニメーション용속도
            //			m_show_speed			= 0;

            m_server_service     = new gvo_server_service();                    // ナビゲーションクライアントからの受信
            m_capture_timer      = new DateTimer();                             // 캡처간격용
            m_expect_pos_timer   = new DateTimer();                             // 예상위치계산용
            m_expect_delay_timer = new DateTimer();                             // 예상위치消去용ディレイタイマ

            m_capture_sucess = false;

            // 도달예상위치を리셋
            reset_expect();
        }
예제 #20
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public sea_area_dd_form(gvt_lib lib, GvoDatabase db, List <sea_area_once_from_dd> list)
        {
            m_lib  = lib;
            m_list = list;
            m_db   = db;

            m_filterd_list = new List <sea_area_once_from_dd>();

            InitializeComponent();
            Useful.SetFontMeiryo(this, def.MEIRYO_POINT);

            listView1.Columns.Add("サーバ", 80);
            listView1.Columns.Add("海域名", 100);
            listView1.Columns.Add("状態", 100);
            listView1.Columns.Add("終了日時", 180);
            listView1.Columns.Add("補足", 100);

            checkBox1.Checked = true;
            checkBox2.Checked = true;

            // リスト更新
            update_list();
        }
예제 #21
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public sea_area_dd_form(gvt_lib lib, GvoDatabase db, List <sea_area_once_from_dd> list)
        {
            m_lib  = lib;
            m_list = list;
            m_db   = db;

            m_filterd_list = new List <sea_area_once_from_dd>();

            InitializeComponent();
            Useful.SetFontMeiryo(this, def.MEIRYO_POINT);

            listView1.Columns.Add("서버", 80);
            listView1.Columns.Add("해역명", 100);
            listView1.Columns.Add("상태", 100);
            listView1.Columns.Add("종료일시", 180);
            listView1.Columns.Add("보충", 100);

            checkBox1.Checked = true;
            checkBox2.Checked = true;

            // 목록업데이트
            update_list();
        }
예제 #22
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/

        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public info_windows(gvt_lib lib, GvoDatabase db, myship_info myship)
        {
            m_lib         = lib;
            m_db          = db;
            m_myship_info = myship;

            m_select_pos = new Point(0, 0);
            m_mouse_pos  = new Point(0, 0);

            m_windows = new hittest_list();

            // 속도윈도우
            m_windows.Add(new hittest());
            // 위치윈도우
            m_windows.Add(new hittest());
            // 항로공유윈도우
            m_windows.Add(new hittest());
            // 이자からの경과일수윈도우
            m_windows.Add(new hittest());
            // 조선からの경과일수윈도우
            m_windows.Add(new hittest());
            // TCP서버
            m_windows.Add(new hittest());
        }
예제 #23
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/

        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public info_windows(gvt_lib lib, GvoDatabase db, myship_info myship)
        {
            m_lib         = lib;
            m_db          = db;
            m_myship_info = myship;

            m_select_pos = new Point(0, 0);
            m_mouse_pos  = new Point(0, 0);

            m_windows = new hittest_list();

            // 速度ウインドウ
            m_windows.Add(new hittest());
            // 位置ウインドウ
            m_windows.Add(new hittest());
            // 航路共有ウインドウ
            m_windows.Add(new hittest());
            // 利息からの経過日数ウインドウ
            m_windows.Add(new hittest());
            // 造船からの経過日数ウインドウ
            m_windows.Add(new hittest());
            // TCPサーバ
            m_windows.Add(new hittest());
        }
예제 #24
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public sea_area(gvt_lib lib, string fname)
        {
            m_lib = lib;

            m_angle      = 0;
            m_angle2     = 0;
            m_color_type = color_type.type1;
            m_groups     = new List <sea_area_once>();

            m_progress_max      = 0;
            m_progress_current  = 0;
            m_progress_info_str = "";
            m_is_loaded_mask    = false;

            sea_area_once once;

            // カリブ海
            once = new sea_area_once("カリブ海");
            once.Add("サンフアン沖", new Vector2(3970, 1049), new Vector2(73, 149), true);
            once.Add("アンティル諸島沖", new Vector2(3819, 1049), new Vector2(150, 149), true);
            once.Add("中央大西洋", new Vector2(4044, 1199), new Vector2(373, 148), false);
            once.Add("西カリブ海", new Vector2(3670, 1049), new Vector2(148, 136), true);
            once.Add("", new Vector2(3753, 1185), new Vector2(65, 124), true);

            once.Add("コッド岬沖", new Vector2(3819, 750), new Vector2(224, 148), true);
            once.Add("バミューダ諸島沖", new Vector2(3717, 899), new Vector2(326, 149), true);
            once.Add("テラ・ノヴァ海", new Vector2(3790 - 1, 600), new Vector2(254, 149), true);
            m_groups.Add(once);

            // アフリカ西岸
            once = new sea_area_once("アフリカ西岸");
            once.Add("穀物海岸沖", new Vector2(4418, 1199), new Vector2(224, 299), true);
            once.Add("黄金海岸沖", new Vector2(4643, 1325), new Vector2(149, 173), true);
            once.Add("ギニア湾", new Vector2(1, 1322), new Vector2(164, 176), true);
            m_groups.Add(once);

            // 南大西洋
            once = new sea_area_once("南大西洋");
            once.Add("ナミビア沖", new Vector2(1, 1499), new Vector2(180, 149), true);
            once.Add("喜望峰沖", new Vector2(1, 1649), new Vector2(297, 223), true);
            once.Add("ケープ海盆", new Vector2(1, 1873), new Vector2(297, 224), false);
            once.Add("南大西洋", new Vector2(4494, 1499), new Vector2(298, 599), false);
            m_groups.Add(once);

            // アフリカ東岸
            once = new sea_area_once("アフリカ東岸");
            once.Add("アガラス岬沖", new Vector2(299, 1683), new Vector2(149, 189), true);
            once.Add("アガラス海盆", new Vector2(299, 1873), new Vector2(299, 225), false);
            once.Add("モザンビーク海峡", new Vector2(449, 1649), new Vector2(149, 223), true);
            once.Add("マダガスカル沖", new Vector2(458, 1500), new Vector2(440, 149), true);
            once.Add("南西インド洋", new Vector2(599, 1649), new Vector2(299, 449), true);
            m_groups.Add(once);

            // 紅海
            once = new sea_area_once("紅海");
            once.Add("ザンジバル沖", new Vector2(513, 1348), new Vector2(385, 151), true);
            once.Add("アラビア海", new Vector2(600, 1199), new Vector2(298, 149), true);
            once.Add("紅海", new Vector2(457, 1076), new Vector2(142, 202), true);
            once.Add("ペルシャ湾", new Vector2(638, 1086), new Vector2(260, 112), true);
            m_groups.Add(once);

            // インド洋
            once = new sea_area_once("インド洋");
            once.Add("インド西岸沖", new Vector2(899, 1125), new Vector2(109, 149), true);
            once.Add("インド南岸沖", new Vector2(899, 1274), new Vector2(224, 149), true);
            once.Add("ベンガル湾", new Vector2(1067, 1134), new Vector2(272, 139), true);
            once.Add("中部インド洋", new Vector2(899, 1424), new Vector2(449, 224), true);
            once.Add("南インド洋", new Vector2(899, 1649), new Vector2(301, 449), false);
            once.Add("南東インド洋", new Vector2(1201, 1649), new Vector2(296, 449), false);
            m_groups.Add(once);

            // 中南米東岸
            once = new sea_area_once("中南米東岸");
            once.Add("南カリブ海", new Vector2(3819, 1199), new Vector2(224, 148), true);
            once.Add("メキシコ湾", new Vector2(3497, 1055), new Vector2(173, 132), true);
            once.Add("サンロケ岬沖", new Vector2(4194, 1348), new Vector2(223, 150), true);
            once.Add("アマゾン川流域", new Vector2(3900, 1348), new Vector2(293, 117), true);
            once.Add("南西大西洋", new Vector2(4194, 1499), new Vector2(299, 373), true);
            once.Add("ブエノスアイレス沖", new Vector2(3946, 1678), new Vector2(248, 195), true);
            once.Add("アルゼンチン海盆", new Vector2(3894, 1873), new Vector2(374, 225), true);
            once.Add("ジョージア海盆", new Vector2(4269, 1873), new Vector2(224, 225), false);
            m_groups.Add(once);

            // 東南アジア
            once = new sea_area_once("東南アジア");
            once.Add("アンダマン海", new Vector2(1124, 1274), new Vector2(224, 149), true);
            once.Add("ジャワ海", new Vector2(1349, 1348), new Vector2(224, 150), true);
            once.Add("ジャワ島南方沖", new Vector2(1349, 1500), new Vector2(224, 73), false);
            once.Add("", new Vector2(1349, 1572), new Vector2(148, 76), false);
            once.Add("シャム湾", new Vector2(1349, 1199), new Vector2(149, 148), true);
            once.Add("バンダ海", new Vector2(1574, 1423), new Vector2(298, 150), true);
            once.Add("セレベス海", new Vector2(1499, 1199), new Vector2(223, 148), true);
            once.Add("", new Vector2(1574, 1347), new Vector2(148, 76), true);
            once.Add("西カロリン海盆", new Vector2(1723, 1199), new Vector2(149, 223), true);
            m_groups.Add(once);

            // 南太平洋
            once = new sea_area_once("南太平洋");
            once.Add("チリ海盆", new Vector2(3595, 1797), new Vector2(299, 301), true);
            once.Add("西オーストラリア海盆", new Vector2(1498, 1573), new Vector2(224, 224), true);
            once.Add("パース海盆", new Vector2(1498, 1798), new Vector2(224, 300), true);
            once.Add("南オーストラリア海盆", new Vector2(1723, 1893), new Vector2(299, 205), true);
            once.Add("アラフラ海", new Vector2(1723, 1573), new Vector2(373, 211), true);
            once.Add("", new Vector2(1873, 1497), new Vector2(223, 76), true);
            once.Add("東カロリン海盆", new Vector2(1873, 1199), new Vector2(223, 297), true);
            once.Add("メラネシア海盆", new Vector2(2097, 1199), new Vector2(223, 298), false);
            once.Add("コーラル海", new Vector2(2097, 1498), new Vector2(299, 299), true);
            once.Add("タスマン海", new Vector2(2023, 1798), new Vector2(448, 300), true);
            once.Add("中央太平洋海盆西", new Vector2(2321, 1199), new Vector2(373, 298), false);
            once.Add("サモア海盆", new Vector2(2397, 1498), new Vector2(224, 299), true);
            once.Add("南太平洋海盆西", new Vector2(2472, 1798), new Vector2(298, 300), false);
            once.Add("中央太平洋海盆", new Vector2(2695, 1199), new Vector2(449, 298), false);
            once.Add("南太平洋海盆北", new Vector2(2622, 1498), new Vector2(523, 299), false);
            once.Add("南太平洋海盆", new Vector2(2771, 1798), new Vector2(374, 300), false);
            once.Add("南太平洋海盆東", new Vector2(3146, 1498), new Vector2(448, 600), false);
            once.Add("ハワイ沖", new Vector2(2321, 751), new Vector2(449, 447), true);
            m_groups.Add(once);

            // 中南米西岸
            once = new sea_area_once("中南米西岸");
            once.Add("ペルー海盆", new Vector2(3595, 1498), new Vector2(260, 298), true);
            once.Add("グアヤキル湾", new Vector2(3595, 1350), new Vector2(126, 147), true);
            once.Add("パナマ湾", new Vector2(3595, 1234), new Vector2(136, 114), true);
            once.Add("中央太平洋海盆東", new Vector2(3145, 1199), new Vector2(299, 298), true);
            once.Add("ガラパゴス諸島沖", new Vector2(3445, 1350), new Vector2(149, 147), true);
            once.Add("テワンテペク湾", new Vector2(3445, 1234), new Vector2(149, 114), true);
            m_groups.Add(once);

            // 東アジア
            once = new sea_area_once("東アジア");
            once.Add("東アジア西部", new Vector2(1393, 912), new Vector2(254, 286), true);
            once.Add("東アジア東部", new Vector2(1649, 751), new Vector2(373, 447), true);
            once.Add("北西太平洋海盆", new Vector2(2024, 751), new Vector2(297, 447), true);
            m_groups.Add(once);

            // 極北大西洋
            once = new sea_area_once("極北大西洋");
            once.Add("フラム海峡", new Vector2(4344, 0), new Vector2(224, 294), true);
            once.Add("デンマーク海盆", new Vector2(4344, 295), new Vector2(224, 155), false);
            once.Add("ロフォーテン海盆", new Vector2(4569, 0), new Vector2(223, 294), true);
            once.Add("ノルウェー海盆", new Vector2(4569, 295), new Vector2(224, 155), false);
            once.Add("ノルウェー海盆2", new Vector2(0, 295), new Vector2(74, 155), false);
            m_groups.Add(once);

            // ヨーロッパ極北
            once = new sea_area_once("ヨーロッパ極北");
            once.Add("西バレンツ海", new Vector2(1, 0), new Vector2(447, 294), true);
            once.Add("北ノルウェー海", new Vector2(75, 295), new Vector2(300, 155), true);
            once.Add("東バレンツ海", new Vector2(449, 0), new Vector2(304, 294), true);
            once.Add("東バレンツ海2", new Vector2(601, 294), new Vector2(152, 156), true);
            once.Add("白海", new Vector2(376, 295), new Vector2(223, 225), true);
            m_groups.Add(once);

            // ユーラシア北
            once = new sea_area_once("ユーラシア北");
            once.Add("西カラ海", new Vector2(754, 0), new Vector2(369, 450), true);
            once.Add("東カラ海", new Vector2(1124, 0), new Vector2(294, 450), true);
            once.Add("ラプテフ海", new Vector2(1419, 0), new Vector2(298, 450), true);
            m_groups.Add(once);

            // ユーラシア極東
            once = new sea_area_once("ユーラシア極東");
            once.Add("コテリヌイ島沖", new Vector2(1718, 0), new Vector2(304, 450), true);
            once.Add("東シベリア海", new Vector2(2023, 0), new Vector2(373, 450), true);
            once.Add("チュクチ海", new Vector2(2397, 0), new Vector2(297, 450), true);
            m_groups.Add(once);

            // ベーリング海
            once = new sea_area_once("ベーリング海");
            once.Add("東ベーリング海", new Vector2(2472, 451), new Vector2(222, 298), true);
            once.Add("西ベーリング海", new Vector2(2246, 451), new Vector2(225, 298), true);
            once.Add("カムチャツカ半島沖", new Vector2(2023, 451), new Vector2(222, 298), true);
            once.Add("オホーツク海", new Vector2(1648, 451), new Vector2(374, 298), true);
            m_groups.Add(once);

            // 北米西岸
            once = new sea_area_once("北米西岸");
            once.Add("アレキサンダー諸島沖", new Vector2(2994, 451), new Vector2(223, 447), true);
            once.Add("北東太平洋", new Vector2(2770, 750), new Vector2(223, 448), false);
            once.Add("アラスカ湾", new Vector2(2695, 451), new Vector2(298, 298), true);
            once.Add("カリフォルニア湾", new Vector2(3218, 899), new Vector2(254, 299), true);
            once.Add("サンフランシスコ沖", new Vector2(2994, 899), new Vector2(223, 299), true);
            m_groups.Add(once);

            // 東カナダ
            once = new sea_area_once("東カナダ");
            once.Add("ハドソン海峡", new Vector2(3746, 451), new Vector2(148, 148), true);
            once.Add("ハドソン湾", new Vector2(3595, 451), new Vector2(150, 298), true);
            once.Add("バフィン湾", new Vector2(3895, 295), new Vector2(147, 155), false);
            once.Add("バフィン島沖", new Vector2(3595, 295), new Vector2(299, 155), true);
            once.Add("エルズミーア島沖", new Vector2(3595, 0), new Vector2(447, 294), true);
            m_groups.Add(once);

            // 西カナダ
            once = new sea_area_once("西カナダ");
            once.Add("北極諸島沖", new Vector2(3218, 0), new Vector2(376, 450), true);
            once.Add("ボーフォート海", new Vector2(2994, 0), new Vector2(223, 450), true);
            once.Add("バロー岬沖", new Vector2(2695, 0), new Vector2(298, 450), true);
            m_groups.Add(once);

            // 読み込み
            load(fname);
        }
예제 #25
0
        /*-------------------------------------------------------------------------
         *
         * ---------------------------------------------------------------------------*/
        public sea_area(gvt_lib lib, string fname)
        {
            m_lib = lib;

            m_angle      = 0;
            m_angle2     = 0;
            m_color_type = color_type.type1;
            m_groups     = new List <sea_area_once>();

            m_progress_max      = 0;
            m_progress_current  = 0;
            m_progress_info_str = "";
            m_is_loaded_mask    = false;

            sea_area_once once;

            // 카리브해
            once = new sea_area_once("카리브해");
            once.Add("산후안 앞바다", new Vector2(3970, 1049), new Vector2(73, 149), true);
            once.Add("안틸 제도 앞바다", new Vector2(3819, 1049), new Vector2(150, 149), true);
            once.Add("중앙대서양", new Vector2(4044, 1199), new Vector2(373, 148), false);
            once.Add("서 카리브 해", new Vector2(3670, 1049), new Vector2(148, 136), true);
            once.Add("", new Vector2(3753, 1185), new Vector2(65, 124), true);

            once.Add("코드 곶 앞바다", new Vector2(3819, 750), new Vector2(224, 148), true);
            once.Add("버뮤다제도 앞바다", new Vector2(3717, 899), new Vector2(326, 149), true);
            once.Add("테라 노바 앞바다", new Vector2(3790 - 1, 600), new Vector2(254, 149), true);
            m_groups.Add(once);

            // 아프리카 서해안
            once = new sea_area_once("아프리카 서해안");
            once.Add("곡물해안 앞바다", new Vector2(4418, 1199), new Vector2(224, 299), true);
            once.Add("황금해안 앞바다", new Vector2(4643, 1325), new Vector2(149, 173), true);
            once.Add("기니 만", new Vector2(1, 1322), new Vector2(164, 176), true);
            m_groups.Add(once);

            // 남대서양
            once = new sea_area_once("남대서양");
            once.Add("나미비아 앞바다", new Vector2(1, 1499), new Vector2(180, 149), true);
            once.Add("희망봉 앞바다", new Vector2(1, 1649), new Vector2(297, 223), true);
            once.Add("케이프 해저분지", new Vector2(1, 1873), new Vector2(297, 224), false);
            once.Add("남대서양", new Vector2(4494, 1499), new Vector2(298, 599), false);
            m_groups.Add(once);

            // 아프리카 동해안
            once = new sea_area_once("아프리카 동해안");
            once.Add("아굴라스 곶", new Vector2(299, 1683), new Vector2(149, 189), true);
            once.Add("아굴라스 해저분지", new Vector2(299, 1873), new Vector2(299, 225), false);
            once.Add("모잠비크 해협", new Vector2(449, 1649), new Vector2(149, 223), true);
            once.Add("마다가스카르 앞바다", new Vector2(458, 1500), new Vector2(440, 149), true);
            once.Add("남서 인도양", new Vector2(599, 1649), new Vector2(299, 449), true);
            m_groups.Add(once);

            // 홍해
            once = new sea_area_once("홍해");
            once.Add("잔지바르 앞바다", new Vector2(513, 1348), new Vector2(385, 151), true);
            once.Add("아라비아 해", new Vector2(600, 1199), new Vector2(298, 149), true);
            once.Add("홍해", new Vector2(457, 1076), new Vector2(142, 202), true);
            once.Add("페르시아 만", new Vector2(638, 1086), new Vector2(260, 112), true);
            m_groups.Add(once);

            // 인도양
            once = new sea_area_once("인도양");
            once.Add("인도 서쪽 해안 앞바다", new Vector2(899, 1125), new Vector2(109, 149), true);
            once.Add("인도 남쪽 해안 앞바다", new Vector2(899, 1274), new Vector2(224, 149), true);
            once.Add("벵갈만", new Vector2(1067, 1134), new Vector2(272, 139), true);
            once.Add("중부 인도양", new Vector2(899, 1424), new Vector2(449, 224), true);
            once.Add("남 인도양", new Vector2(899, 1649), new Vector2(301, 449), false);
            once.Add("남동 인도양", new Vector2(1201, 1649), new Vector2(296, 449), false);
            m_groups.Add(once);

            // 중남미 동해안
            once = new sea_area_once("중남미 동해안");
            once.Add("남 카리브 해", new Vector2(3819, 1199), new Vector2(224, 148), true);
            once.Add("멕시코만", new Vector2(3497, 1055), new Vector2(173, 132), true);
            once.Add("산로케곶 앞바다", new Vector2(4194, 1348), new Vector2(223, 150), true);
            once.Add("아마존강 유역", new Vector2(3900, 1348), new Vector2(293, 117), true);
            once.Add("남서 대서양", new Vector2(4194, 1499), new Vector2(299, 373), true);
            once.Add("부에노스아이레스 앞바다", new Vector2(3946, 1678), new Vector2(248, 195), true);
            once.Add("아르헨티나 해저분지", new Vector2(3894, 1873), new Vector2(374, 225), true);
            once.Add("조지아 해저분지", new Vector2(4269, 1873), new Vector2(224, 225), false);
            m_groups.Add(once);

            // 동남아시아
            once = new sea_area_once("동남아시아");
            once.Add("안다만 해", new Vector2(1124, 1274), new Vector2(224, 149), true);
            once.Add("자바 해", new Vector2(1349, 1348), new Vector2(224, 150), true);
            once.Add("자바섬 남쪽 앞바다", new Vector2(1349, 1500), new Vector2(224, 73), false);
            once.Add("", new Vector2(1349, 1572), new Vector2(148, 76), false);
            once.Add("시암만", new Vector2(1349, 1199), new Vector2(149, 148), true);
            once.Add("반다 해", new Vector2(1574, 1423), new Vector2(298, 150), true);
            once.Add("셀레베스 해", new Vector2(1499, 1199), new Vector2(223, 148), true);
            once.Add("", new Vector2(1574, 1347), new Vector2(148, 76), true);
            once.Add("서캐롤린 해저분지", new Vector2(1723, 1199), new Vector2(149, 223), true);
            m_groups.Add(once);

            // 남태평양
            once = new sea_area_once("남태평양");
            once.Add("칠레 해저분지", new Vector2(3595, 1797), new Vector2(299, 301), true);
            once.Add("오스트레일리아 서부 해저분지", new Vector2(1498, 1573), new Vector2(224, 224), true);
            once.Add("퍼스 해저분지", new Vector2(1498, 1798), new Vector2(224, 300), true);
            once.Add("오스트레일리아 남부 해저분지", new Vector2(1723, 1893), new Vector2(299, 205), true);
            once.Add("아라푸라 해", new Vector2(1723, 1573), new Vector2(373, 211), true);
            once.Add("", new Vector2(1873, 1497), new Vector2(223, 76), true);
            once.Add("동 캐롤라인 해저분지", new Vector2(1873, 1199), new Vector2(223, 297), true);
            once.Add("멜라네시아 해저분지", new Vector2(2097, 1199), new Vector2(223, 298), false);
            once.Add("산호해", new Vector2(2097, 1498), new Vector2(299, 299), true);
            once.Add("태즈먼 해", new Vector2(2023, 1798), new Vector2(448, 300), true);
            once.Add("중앙 태평양 해저분지 서쪽", new Vector2(2321, 1199), new Vector2(373, 298), false);
            once.Add("사모아 해저분지", new Vector2(2397, 1498), new Vector2(224, 299), true);
            once.Add("남태평양 해저분지 서쪽", new Vector2(2472, 1798), new Vector2(298, 300), false);
            once.Add("중앙 태평양 해저분지", new Vector2(2695, 1199), new Vector2(449, 298), false);
            once.Add("남태평양 해저분지 북쪽", new Vector2(2622, 1498), new Vector2(523, 299), false);
            once.Add("남태평양 해저분지", new Vector2(2771, 1798), new Vector2(374, 300), false);
            once.Add("남태평양 해저분지 동쪽", new Vector2(3146, 1498), new Vector2(448, 600), false);
            once.Add("하와이 앞바다", new Vector2(2321, 751), new Vector2(449, 447), true);
            m_groups.Add(once);

            // 중남미 서해안
            once = new sea_area_once("중남미 서해안");
            once.Add("페루 해저분지", new Vector2(3595, 1498), new Vector2(260, 298), true);
            once.Add("과야킬 만", new Vector2(3595, 1350), new Vector2(126, 147), true);
            once.Add("파나마 만", new Vector2(3595, 1234), new Vector2(136, 114), true);
            once.Add("중앙 태평양 해저분지 동쪽", new Vector2(3145, 1199), new Vector2(299, 298), true);
            once.Add("갈라파고스제도 앞바다", new Vector2(3445, 1350), new Vector2(149, 147), true);
            once.Add("테우안테펙 만", new Vector2(3445, 1234), new Vector2(149, 114), true);
            m_groups.Add(once);

            // 동아시아
            once = new sea_area_once("동아시아");
            once.Add("동아시아 서부", new Vector2(1393, 912), new Vector2(254, 286), true);
            once.Add("동아시아 동부", new Vector2(1649, 751), new Vector2(373, 447), true);
            once.Add("북서 태평양 해저분지", new Vector2(2024, 751), new Vector2(297, 447), true);
            m_groups.Add(once);

            // 극북대서양
            once = new sea_area_once("극북대서양");
            once.Add("프람 해협", new Vector2(4344, 0), new Vector2(224, 294), true);
            once.Add("덴마크 해저분지", new Vector2(4344, 295), new Vector2(224, 155), false);
            once.Add("로포텐 해저분지", new Vector2(4569, 0), new Vector2(223, 294), true);
            once.Add("노르웨이 해저분지", new Vector2(4569, 295), new Vector2(224, 155), false);
            once.Add("노르웨이 해저분지2", new Vector2(0, 295), new Vector2(74, 155), false);
            m_groups.Add(once);

            // 유럽 극북
            once = new sea_area_once("유럽 극북");
            once.Add("서 바렌츠해", new Vector2(1, 0), new Vector2(447, 294), true);
            once.Add("북 노르웨이해", new Vector2(75, 295), new Vector2(300, 155), true);
            once.Add("동 바렌츠해", new Vector2(449, 0), new Vector2(304, 294), true);
            once.Add("동 바렌츠해2", new Vector2(601, 294), new Vector2(152, 156), true);
            once.Add("백해", new Vector2(376, 295), new Vector2(223, 225), true);
            m_groups.Add(once);

            // 유라시아 북쪽
            once = new sea_area_once("유라시아 북쪽");
            once.Add("서 카라해", new Vector2(754, 0), new Vector2(369, 450), true);
            once.Add("동 카라해", new Vector2(1124, 0), new Vector2(294, 450), true);
            once.Add("라프테프 해", new Vector2(1419, 0), new Vector2(298, 450), true);
            m_groups.Add(once);

            // 유라시아 극동
            once = new sea_area_once("유라시아 극동");
            once.Add("코텔니 섬 앞바다", new Vector2(1718, 0), new Vector2(304, 450), true);
            once.Add("동 시베리아 해", new Vector2(2023, 0), new Vector2(373, 450), true);
            once.Add("추크치 해", new Vector2(2397, 0), new Vector2(297, 450), true);
            m_groups.Add(once);

            // 베링 해
            once = new sea_area_once("베링 해");
            once.Add("동 베링해", new Vector2(2472, 451), new Vector2(222, 298), true);
            once.Add("서 베링해", new Vector2(2246, 451), new Vector2(225, 298), true);
            once.Add("캄차카 반도 앞바다", new Vector2(2023, 451), new Vector2(222, 298), true);
            once.Add("오호츠크 해", new Vector2(1648, 451), new Vector2(374, 298), true);
            m_groups.Add(once);

            // 북미 서해안
            once = new sea_area_once("북미 서해안");
            once.Add("알렉산더 제도 앞바다", new Vector2(2994, 451), new Vector2(223, 447), true);
            once.Add("북동태평양", new Vector2(2770, 750), new Vector2(223, 448), false);
            once.Add("알래스카 만", new Vector2(2695, 451), new Vector2(298, 298), true);
            once.Add("캘리포니아 만", new Vector2(3218, 899), new Vector2(254, 299), true);
            once.Add("샌프란시스코 앞바다", new Vector2(2994, 899), new Vector2(223, 299), true);
            m_groups.Add(once);

            // 동 캐나다
            once = new sea_area_once("동 캐나다");
            once.Add("허드슨 해협", new Vector2(3746, 451), new Vector2(148, 148), true);
            once.Add("허드슨 만", new Vector2(3595, 451), new Vector2(150, 298), true);
            once.Add("배핀 만", new Vector2(3895, 295), new Vector2(147, 155), false);
            once.Add("배핀 앞바다", new Vector2(3595, 295), new Vector2(299, 155), true);
            once.Add("엘즈미어 앞바다", new Vector2(3595, 0), new Vector2(447, 294), true);
            m_groups.Add(once);

            // 서 캐나다
            once = new sea_area_once("서 캐나다");
            once.Add("북극제도 앞바다", new Vector2(3218, 0), new Vector2(376, 450), true);
            once.Add("보퍼트 해", new Vector2(2994, 0), new Vector2(223, 450), true);
            once.Add("배로우 곶 앞바다", new Vector2(2695, 0), new Vector2(298, 450), true);
            m_groups.Add(once);

            // 그린란드 앞바다 2개가 빠진 상태

            // 읽기
            load(fname);
        }
예제 #26
0
 public data(gvt_lib lib, Point pos, map_mark_type type, string memo) : base()
 {
     m_lib = lib;
     set_data(pos, type, memo);
 }
예제 #27
0
 /*-------------------------------------------------------------------------
  *
  * ---------------------------------------------------------------------------*/
 public data(gvt_lib lib) : base()
 {
     m_lib  = lib;
     m_memo = "";
     m_type = map_mark_type.axis0;
 }