Blender
V2.93
source
blender
io
gpencil
intern
gpencil_io_import_svg.hh
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or
3
* modify it under the terms of the GNU General Public License
4
* as published by the Free Software Foundation; either version 2
5
* of the License, or (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software Foundation,
14
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
*
16
* The Original Code is Copyright (C) 2020 Blender Foundation
17
* All rights reserved.
18
*/
19
#pragma once
20
24
#include "
gpencil_io_import_base.hh
"
25
26
struct
GpencilIOParams
;
27
struct
NSVGshape
;
28
struct
NSVGpath
;
29
struct
bGPdata
;
30
struct
bGPDframe
;
31
32
#define SVG_IMPORTER_NAME "SVG Import for Grease Pencil"
33
#define SVG_IMPORTER_VERSION "v1.0"
34
35
namespace
blender::io::gpencil
{
36
37
class
GpencilImporterSVG
:
public
GpencilImporter
{
38
39
public
:
40
GpencilImporterSVG
(
const
char
*filename,
const
struct
GpencilIOParams
*iparams);
41
42
bool
read
();
43
44
protected
:
45
private
:
46
void
create_stroke(
struct
bGPdata
*
gpd_
,
47
struct
bGPDframe
*gpf,
48
struct
NSVGshape
*shape,
49
struct
NSVGpath
*path,
50
const
int32_t
mat_index,
51
const
float
matrix[4][4]);
52
53
void
convert_color(
const
int32_t
color,
float
r_linear_rgba[4]);
54
};
55
56
}
// namespace blender::io::gpencil
blender::io::gpencil::GpencilIO::gpd_
struct bGPdata * gpd_
Definition:
gpencil_io_base.hh:73
blender::io::gpencil::GpencilImporterSVG
Definition:
gpencil_io_import_svg.hh:37
blender::io::gpencil::GpencilImporterSVG::read
bool read()
Definition:
gpencil_io_import_svg.cc:58
blender::io::gpencil::GpencilImporterSVG::GpencilImporterSVG
GpencilImporterSVG(const char *filename, const struct GpencilIOParams *iparams)
Definition:
gpencil_io_import_svg.cc:52
blender::io::gpencil::GpencilImporter
Definition:
gpencil_io_import_base.hh:28
gpencil_io_import_base.hh
blender::io::gpencil
Definition:
gpencil_io_base.cc:56
int32_t
signed int int32_t
Definition:
stdint.h:80
GpencilIOParams
Definition:
gpencil_io.h:34
NSVGpath
Definition:
nanosvg.h:118
NSVGshape
Definition:
nanosvg.h:126
bGPDframe
Definition:
DNA_gpencil_types.h:396
bGPdata
Definition:
DNA_gpencil_types.h:645
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1