Blender
V3.3
|
#include <gpencil_io_base.hh>
Classes | |
struct | ObjectZ |
Public Member Functions | |
GpencilIO (const GpencilIOParams *iparams) | |
void | frame_number_set (int value) |
void | prepare_camera_params (Scene *scene, const GpencilIOParams *iparams) |
Protected Member Functions | |
bool | gpencil_3D_point_to_screen_space (const float3 co, float2 &r_co) |
float2 | gpencil_3D_point_to_render_space (const float3 co) |
float2 | gpencil_3D_point_to_2D (const float3 co) |
float | stroke_point_radius_get (struct bGPDlayer *gpl, struct bGPDstroke *gps) |
void | create_object_list () |
bool | is_camera_mode () |
float | stroke_average_opacity_get () |
void | prepare_layer_export_matrix (struct Object *ob, struct bGPDlayer *gpl) |
void | prepare_stroke_export_colors (struct Object *ob, struct bGPDstroke *gps) |
void | selected_objects_boundbox_calc () |
void | selected_objects_boundbox_get (rctf *boundbox) |
void | filepath_set (const char *filepath) |
Protected Attributes | |
GpencilIOParams | params_ |
bool | invert_axis_ [2] |
float4x4 | diff_mat_ |
char | filepath_ [FILE_MAX] |
blender::Vector< ObjectZ > | ob_list_ |
struct Depsgraph * | depsgraph_ |
struct bGPdata * | gpd_ |
struct Main * | bmain_ |
struct Scene * | scene_ |
struct RegionView3D * | rv3d_ |
int | winx_ |
int | winy_ |
int | render_x_ |
int | render_y_ |
float | camera_ratio_ |
rctf | camera_rect_ |
float2 | offset_ |
int | cfra_ |
float | stroke_color_ [4] |
float | fill_color_ [4] |
Definition at line 31 of file gpencil_io_base.hh.
blender::io::gpencil::GpencilIO::GpencilIO | ( | const GpencilIOParams * | iparams | ) |
Definition at line 41 of file gpencil_io_base.cc.
References bmain_, GpencilIOParams::C, cfra_, CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_scene(), Object::data, depsgraph_, GpencilIOParams::frame_cur, gpd_, GpencilIOParams::ob, params_, prepare_camera_params(), GpencilIOParams::region, ARegion::regiondata, rv3d_, and scene_.
|
protected |
Create a list of selected objects sorted from back to front
Definition at line 128 of file gpencil_io_base.cc.
References BASE_SELECTED, GpencilIOParams::C, copy_v3_v3(), CTX_data_view_layer(), dot_v3v3(), ED_view3d_calc_zfac(), GP_EXPORT_ACTIVE, GP_EXPORT_SELECTED, RegionView3D::is_persp, LISTBASE_FOREACH, GpencilIOParams::ob, OB_GPENCIL, ob_list_, ViewLayer::object_bases, Object::obmat, params_, rv3d_, GpencilIOParams::select_mode, sort(), Object::type, and RegionView3D::viewinv.
Referenced by prepare_camera_params().
|
protected |
Set file input_text full path.
filepath | Path of the file provided by save dialog. |
Definition at line 176 of file gpencil_io_base.cc.
References BKE_main_blendfile_path(), BLI_path_abs(), BLI_strncpy(), bmain_, FILE_MAX, and filepath_.
Referenced by blender::io::gpencil::GpencilExporterPDF::GpencilExporterPDF(), blender::io::gpencil::GpencilExporterSVG::GpencilExporterSVG(), and blender::io::gpencil::GpencilImporterSVG::GpencilImporterSVG().
void blender::io::gpencil::GpencilIO::frame_number_set | ( | int | value | ) |
Definition at line 365 of file gpencil_io_base.cc.
References cfra_.
Convert to 2D.
Definition at line 242 of file gpencil_io_base.cc.
References bool, gpencil_3D_point_to_render_space(), gpencil_3D_point_to_screen_space(), RegionView3D::persp, result, rv3d_, and RV3D_CAMOB.
Referenced by selected_objects_boundbox_calc(), and stroke_point_radius_get().
|
protected |
Convert to render space.
Definition at line 221 of file gpencil_io_base.cc.
References diff_mat_, float(), invert_axis_, mul_v2_project_m4_v3(), render_x_, and render_y_.
Referenced by gpencil_3D_point_to_2D().
|
protected |
Convert to screenspace.
Definition at line 182 of file gpencil_io_base.cc.
References camera_ratio_, copy_v2_v2(), diff_mat_, ED_view3d_project_float_global(), ELEM, invert_axis_, mul_v2_fl(), offset_, params_, GpencilIOParams::region, sub_v2_v2(), V2D_IS_CLIPPED, V3D_PROJ_RET_OK, winx_, and winy_.
Referenced by gpencil_3D_point_to_2D().
|
protected |
Definition at line 307 of file gpencil_io_base.cc.
void blender::io::gpencil::GpencilIO::prepare_camera_params | ( | Scene * | scene, |
const GpencilIOParams * | iparams | ||
) |
Definition at line 57 of file gpencil_io_base.cc.
References BKE_camera_params_compute_matrix(), BKE_camera_params_compute_viewplane(), BKE_camera_params_from_object(), BKE_camera_params_init(), BKE_render_resolution(), BKE_scene_camera_switch_update(), GpencilIOParams::C, Scene::camera, View3D::camera, camera_ratio_, camera_rect_, create_object_list(), CTX_data_scene(), depsgraph_, ED_view3d_calc_camera_border(), GP_EXPORT_TO_PDF, invert_m4_m4(), GpencilIOParams::mode, mul_m4_m4m4(), Object::obmat, offset_, params, params_, RegionView3D::persp, Scene::r, GpencilIOParams::region, render_x_, render_y_, rv3d_, RV3D_CAMOB, scene, scene_, selected_objects_boundbox_calc(), selected_objects_boundbox_get(), unit_m4(), GpencilIOParams::v3d, ARegion::winx, winx_, ARegion::winy, winy_, RenderData::xasp, rctf::xmax, rctf::xmin, RenderData::xsch, RenderData::yasp, rctf::ymax, rctf::ymin, and RenderData::ysch.
Referenced by GpencilIO().
|
protected |
Definition at line 272 of file gpencil_io_base.cc.
References BKE_gpencil_layer_transform_matrix_get(), depsgraph_, diff_mat_, bGPDlayer::layer_invmat, and blender::float4x4::values.
|
protected |
Definition at line 278 of file gpencil_io_base.cc.
References add_v4_v4(), BKE_gpencil_material_settings(), copy_v4_v4(), fill_color_, MaterialGPencilStyle::fill_rgba, float(), interp_v3_v3v3(), bGPDstroke::mat_nr, mul_v4_v4fl(), bGPDstroke::points, stroke_color_, MaterialGPencilStyle::stroke_rgba, bGPDstroke::totpoints, and bGPDstroke::vert_color_fill.
|
protected |
Definition at line 312 of file gpencil_io_base.cc.
References add_v2_fl(), BKE_gpencil_layer_transform_matrix_get(), Object::data, DEG_get_evaluated_id(), depsgraph_, diff_mat_, GP_LAYER_HIDE, gpencil_3D_point_to_2D(), Object::id, INIT_MINMAX2, bGPdata::layers, LISTBASE_FOREACH, max, min, minmax_v2v2_v2(), ob_list_, bGPDframe::strokes, blender::float4x4::values, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by prepare_camera_params().
Definition at line 357 of file gpencil_io_base.cc.
References rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by prepare_camera_params().
|
protected |
Definition at line 302 of file gpencil_io_base.cc.
|
protected |
Get radius of point.
Definition at line 253 of file gpencil_io_base.cc.
References BKE_gpencil_free_stroke(), BKE_gpencil_stroke_perimeter_from_view(), diff_mat_, gpd_, gpencil_3D_point_to_2D(), blender::math::length(), MAX2, bGPDstroke::points, rv3d_, v1, blender::float4x4::values, and bGPDspoint::x.
|
protected |
Definition at line 57 of file gpencil_io_base.hh.
Referenced by blender::io::gpencil::GpencilImporter::create_material(), filepath_set(), and GpencilIO().
|
protected |
Definition at line 63 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_screen_space(), and prepare_camera_params().
|
protected |
Definition at line 64 of file gpencil_io_base.hh.
Referenced by prepare_camera_params().
|
protected |
Definition at line 68 of file gpencil_io_base.hh.
Referenced by frame_number_set(), GpencilIO(), and blender::io::gpencil::GpencilImporterSVG::read().
|
protected |
Definition at line 55 of file gpencil_io_base.hh.
Referenced by GpencilIO(), prepare_camera_params(), prepare_layer_export_matrix(), and selected_objects_boundbox_calc().
|
protected |
Definition at line 42 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_render_space(), gpencil_3D_point_to_screen_space(), prepare_layer_export_matrix(), selected_objects_boundbox_calc(), and stroke_point_radius_get().
|
protected |
Definition at line 43 of file gpencil_io_base.hh.
Referenced by filepath_set(), blender::io::gpencil::GpencilImporterSVG::read(), blender::io::gpencil::GpencilExporterPDF::write(), and blender::io::gpencil::GpencilExporterSVG::write().
|
protected |
Definition at line 70 of file gpencil_io_base.hh.
Referenced by prepare_stroke_export_colors().
|
protected |
Definition at line 56 of file gpencil_io_base.hh.
Referenced by GpencilIO(), blender::io::gpencil::GpencilImporterSVG::read(), and stroke_point_radius_get().
|
protected |
Definition at line 41 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_render_space(), gpencil_3D_point_to_screen_space(), blender::io::gpencil::GpencilExporterPDF::GpencilExporterPDF(), and blender::io::gpencil::GpencilExporterSVG::GpencilExporterSVG().
|
protected |
List of included objects.
Definition at line 52 of file gpencil_io_base.hh.
Referenced by create_object_list(), and selected_objects_boundbox_calc().
|
protected |
Definition at line 66 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_screen_space(), and prepare_camera_params().
|
protected |
Definition at line 39 of file gpencil_io_base.hh.
Referenced by blender::io::gpencil::GpencilImporter::create_material(), blender::io::gpencil::GpencilImporter::create_object(), create_object_list(), gpencil_3D_point_to_screen_space(), GpencilIO(), prepare_camera_params(), and blender::io::gpencil::GpencilImporterSVG::read().
|
protected |
Definition at line 62 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_render_space(), and prepare_camera_params().
|
protected |
Definition at line 62 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_render_space(), and prepare_camera_params().
|
protected |
Definition at line 59 of file gpencil_io_base.hh.
Referenced by create_object_list(), gpencil_3D_point_to_2D(), GpencilIO(), prepare_camera_params(), and stroke_point_radius_get().
|
protected |
Definition at line 58 of file gpencil_io_base.hh.
Referenced by blender::io::gpencil::GpencilImporter::create_object(), GpencilIO(), and prepare_camera_params().
|
protected |
Definition at line 70 of file gpencil_io_base.hh.
Referenced by prepare_stroke_export_colors().
|
protected |
Definition at line 61 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_screen_space(), and prepare_camera_params().
|
protected |
Definition at line 61 of file gpencil_io_base.hh.
Referenced by gpencil_3D_point_to_screen_space(), and prepare_camera_params().