source: git/src/export.h @ 672459c

RELEASE/1.2debug-cidebug-ci-sanitisersfaster-cavernloglog-selectstereostereo-2025walls-datawalls-data-hanging-as-warningwarn-only-for-hanging-survey
Last change on this file since 672459c was f7fb2ec, checked in by Olly Betts <olly@…>, 7 years ago

survexport: Replace --no-xxx options with --xxx

If no options specify what to export are given, use a per-format
default. If the user specifies --defaults explicitly then the defaults
are always added so the user can easily build on the defaults.

Report any specified options which aren't supported for the format
being exported to.

Don't waste effort calculating bounds on the data if this information
isn't needed for the format being exported to (GPX, KML, POS).

  • Property mode set to 100644
File size: 2.4 KB
Line 
1/* export.h
2 * Export to CAD-like formats (DXF, Skencil, SVG, EPS, HPGL) and also Compass
3 * PLT.
4 */
5
6/* Copyright (C) 2004,2005,2012,2014,2015,2018 Olly Betts
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
21 */
22
23#ifndef SURVEX_INCLUDED_EXPORT_H
24#define SURVEX_INCLUDED_EXPORT_H
25
26#include "wx.h"
27
28class Model;
29
30// Order here needs to match order of extension array in export.cc.
31typedef enum {
32    FMT_DXF,
33    FMT_EPS,
34    FMT_GPX,
35    FMT_HPGL,
36    FMT_JSON,
37    FMT_KML,
38    FMT_PLT,
39    FMT_SK,
40    FMT_POS,
41    FMT_SVG,
42    FMT_MAX_PLUS_ONE_
43} export_format;
44
45struct format_info {
46    const char* extension;
47    int msg_filetype;
48    unsigned mask;
49    // Defaults for survexport (aven defaults to what is currently shown).
50    unsigned defaults;
51};
52
53extern const format_info export_format_info[];
54
55#define LEGS            0x00000001
56#define SURF            0x00000002
57#define STNS            0x00000004
58#define LABELS          0x00000008
59#define XSECT           0x00000010
60#define WALL1           0x00000020
61#define WALL2           0x00000040
62#define WALLS (WALL1|WALL2)
63#define PASG            0x00000080
64#define EXPORT_3D       0x00000100
65#define CENTRED         0x00000200
66#define ENTS            0x00000400
67#define FIXES           0x00000800
68#define EXPORTS         0x00001000
69#define PROJ            0x00002000
70#define GRID            0x00004000
71#define TEXT_HEIGHT     0x00008000
72#define MARKER_SIZE     0x00010000
73#define SCALE           0x00020000
74#define FULL_COORDS     0x00040000
75#define SPLAYS          0x00080000
76
77#define DEFAULT_GRID_SPACING 100 // metres
78#define DEFAULT_TEXT_HEIGHT 0.6
79#define DEFAULT_MARKER_SIZE 0.8
80
81bool Export(const wxString &fnm_out, const wxString &title,
82            const wxString &datestamp,
83            const Model& model,
84            double pan, double tilt, int show_mask, export_format format,
85            double grid_, double text_height_, double marker_size_,
86            double scale);
87
88#endif
Note: See TracBrowser for help on using the repository browser.