Browse Source

python: doc++

Huh, why didn't I document the MeshData accessors at all?
pull/20/head
Vladimír Vondruš 4 years ago
parent
commit
734072bee3
  1. 4
      src/python/magnum/magnum.cpp
  2. 8
      src/python/magnum/trade.cpp

4
src/python/magnum/magnum.cpp

@ -65,7 +65,7 @@ template<class T> void image(py::class_<T>& c) {
}, "Image size") }, "Image size")
.def_property_readonly("data", [](T& self) { .def_property_readonly("data", [](T& self) {
return Containers::pyArrayViewHolder(self.data(), self.data() ? py::cast(self) : py::none{}); return Containers::pyArrayViewHolder(self.data(), self.data() ? py::cast(self) : py::none{});
}, "Image data") }, "Raw image data")
.def_property_readonly("pixels", [](T& self) { .def_property_readonly("pixels", [](T& self) {
return Containers::pyArrayViewHolder(Containers::PyStridedArrayView<T::Dimensions + 1, const char>{self.pixels()}, self.data() ? py::cast(self) : py::none{}); return Containers::pyArrayViewHolder(Containers::PyStridedArrayView<T::Dimensions + 1, const char>{self.pixels()}, self.data() ? py::cast(self) : py::none{});
}, "View on pixel data"); }, "View on pixel data");
@ -135,7 +135,7 @@ template<class T> void imageView(py::class_<T, PyImageViewHolder<T>>& c) {
self.setData(data); self.setData(data);
pyObjectHolderFor<PyImageViewHolder>(self).owner = pyObjectHolderFor<PyImageViewHolder>(self).owner =
pyObjectHolderFor<Containers::PyArrayViewHolder>(data).owner; pyObjectHolderFor<Containers::PyArrayViewHolder>(data).owner;
}, "Image data") }, "Raw image data")
.def_property_readonly("pixels", [](T& self) { .def_property_readonly("pixels", [](T& self) {
return Containers::pyArrayViewHolder(Containers::PyStridedArrayView<T::Dimensions + 1, typename T::Type>{self.pixels()}, pyObjectHolderFor<PyImageViewHolder>(self).owner); return Containers::pyArrayViewHolder(Containers::PyStridedArrayView<T::Dimensions + 1, typename T::Type>{self.pixels()}, pyObjectHolderFor<PyImageViewHolder>(self).owner);
}, "View on pixel data") }, "View on pixel data")

8
src/python/magnum/trade.cpp

@ -129,7 +129,7 @@ template<UnsignedInt dimensions> void imageData(py::class_<Trade::ImageData<dime
}, "Image size") }, "Image size")
.def_property_readonly("data", [](Trade::ImageData<dimensions>& self) { .def_property_readonly("data", [](Trade::ImageData<dimensions>& self) {
return Containers::pyArrayViewHolder(self.data(), py::cast(self)); return Containers::pyArrayViewHolder(self.data(), py::cast(self));
}, "Image data") }, "Raw image data")
.def_property_readonly("pixels", [](Trade::ImageData<dimensions>& self) { .def_property_readonly("pixels", [](Trade::ImageData<dimensions>& self) {
if(self.isCompressed()) { if(self.isCompressed()) {
PyErr_SetString(PyExc_AttributeError, "image is compressed"); PyErr_SetString(PyExc_AttributeError, "image is compressed");
@ -321,9 +321,9 @@ void trade(py::module_& m) {
} }
return self.indexCount(); return self.indexCount();
}) }, "Index count")
.def_property_readonly("vertex_count", &Trade::MeshData::vertexCount) .def_property_readonly("vertex_count", &Trade::MeshData::vertexCount, "Vertex count")
.def_property_readonly("attribute_count", static_cast<UnsignedInt(Trade::MeshData::*)() const>(&Trade::MeshData::attributeCount)); .def_property_readonly("attribute_count", static_cast<UnsignedInt(Trade::MeshData::*)() const>(&Trade::MeshData::attributeCount), "Attribute array count");
py::class_<Trade::ImageData1D> imageData1D{m, "ImageData1D", "One-dimensional image data"}; py::class_<Trade::ImageData1D> imageData1D{m, "ImageData1D", "One-dimensional image data"};
py::class_<Trade::ImageData2D> imageData2D{m, "ImageData2D", "Two-dimensional image data"}; py::class_<Trade::ImageData2D> imageData2D{m, "ImageData2D", "Two-dimensional image data"};

Loading…
Cancel
Save