New (experimental) Stanford PLY importer and exporter written in C++. Handles: vertices, faces, edges, vertex colors, normals, UVs. Both binary and ASCII formats are supported. Usually 10-20x faster than the existing Python based PLY importer/exporter. Additional notes compared to the previous Python addon: - Importing point clouds with vertex colors now works - Importing PLY files with non standard line endings - Exporting multiple objects (previous exporter didn't take the vertex indices into account) - The importer has the option to merge vertices - The exporter supports exporting loose edges and vertices along with UV map data This is squashed commit of PR #104404 Reviewed By: Hans Goudey, Aras Pranckevicius Co-authored-by: Arjan van Diest Co-authored-by: Lilith Houtjes Co-authored-by: Bas Hendriks Co-authored-by: Thomas Feijen Co-authored-by: Yoran Huzen
77 lines
1.7 KiB
C
77 lines
1.7 KiB
C
/* SPDX-License-Identifier: GPL-2.0-or-later
|
|
* Copyright 2008 Blender Foundation. All rights reserved. */
|
|
|
|
/** \file
|
|
* \ingroup collada
|
|
*/
|
|
|
|
#include "io_ops.h" /* own include */
|
|
|
|
#include "WM_api.h"
|
|
|
|
#ifdef WITH_COLLADA
|
|
# include "io_collada.h"
|
|
#endif
|
|
|
|
#ifdef WITH_ALEMBIC
|
|
# include "io_alembic.h"
|
|
#endif
|
|
|
|
#ifdef WITH_USD
|
|
# include "io_usd.h"
|
|
#endif
|
|
|
|
#include "io_cache.h"
|
|
#include "io_gpencil.h"
|
|
#include "io_obj.h"
|
|
#include "io_ply_ops.h"
|
|
#include "io_stl_ops.h"
|
|
|
|
void ED_operatortypes_io(void)
|
|
{
|
|
#ifdef WITH_COLLADA
|
|
/* Collada operators: */
|
|
WM_operatortype_append(WM_OT_collada_export);
|
|
WM_operatortype_append(WM_OT_collada_import);
|
|
#endif
|
|
#ifdef WITH_ALEMBIC
|
|
WM_operatortype_append(WM_OT_alembic_import);
|
|
WM_operatortype_append(WM_OT_alembic_export);
|
|
#endif
|
|
#ifdef WITH_USD
|
|
WM_operatortype_append(WM_OT_usd_import);
|
|
WM_operatortype_append(WM_OT_usd_export);
|
|
#endif
|
|
|
|
#ifdef WITH_IO_GPENCIL
|
|
WM_operatortype_append(WM_OT_gpencil_import_svg);
|
|
# ifdef WITH_PUGIXML
|
|
WM_operatortype_append(WM_OT_gpencil_export_svg);
|
|
# endif
|
|
# ifdef WITH_HARU
|
|
WM_operatortype_append(WM_OT_gpencil_export_pdf);
|
|
# endif
|
|
#endif
|
|
|
|
WM_operatortype_append(CACHEFILE_OT_open);
|
|
WM_operatortype_append(CACHEFILE_OT_reload);
|
|
|
|
WM_operatortype_append(CACHEFILE_OT_layer_add);
|
|
WM_operatortype_append(CACHEFILE_OT_layer_remove);
|
|
WM_operatortype_append(CACHEFILE_OT_layer_move);
|
|
|
|
#ifdef WITH_IO_WAVEFRONT_OBJ
|
|
WM_operatortype_append(WM_OT_obj_export);
|
|
WM_operatortype_append(WM_OT_obj_import);
|
|
#endif
|
|
|
|
#ifdef WITH_IO_PLY
|
|
WM_operatortype_append(WM_OT_ply_export);
|
|
WM_operatortype_append(WM_OT_ply_import);
|
|
#endif
|
|
|
|
#ifdef WITH_IO_STL
|
|
WM_operatortype_append(WM_OT_stl_import);
|
|
#endif
|
|
}
|