#include <MeshRemapper.h>
Inheritance diagram for MeshRemapper:

Public Member Functions | |
| MeshRemapper (HuginBase::Panorama *m_pano, HuginBase::SrcPanoImage *image, VisualizationState *visualization_state) | |
| virtual | ~MeshRemapper () |
| virtual void | UpdateAndResetIndex () |
| virtual bool | GetNextFaceCoordinates (Coords *result)=0 |
| Get the texture and vertex coordinates for the next face. | |
Protected Member Functions | |
| void | SetCrop () |
| Fill the crop values of the MeshRemapper from the source image. | |
| void | ClipFace (Coords *face) |
| Crop a face to the source image, return true if there is anything left. | |
| bool | GiveClipFaceResult (Coords *result) |
| Get a face that was produced by ClipFace. | |
Protected Attributes | |
| VisualizationState * | visualization_state |
| HuginBase::Panorama * | m_pano |
| HuginBase::SrcPanoImage * | image |
| float | scale |
| The number number of units between vertex coorinates that gives a pixel in the display. | |
| double | height |
| The sizes of the input images in pixels. | |
| double | width |
| The sizes of the input images in pixels. | |
| HuginBase::PTools::Transform | transform |
| A transform to use to remap the images. | |
| HuginBase::SrcPanoImage::CropMode | crop_mode |
| Crop mode of the source image. | |
| double | crop_x1 |
| double | crop_x2 |
| double | crop_y1 |
| double | crop_y2 |
| double | circle_crop_centre_x |
| double | circle_crop_centre_y |
| double | circle_crop_radius_x |
| double | circle_crop_radius_y |
| bool | circle_crop |
Private Attributes | |
| std::vector< MeshRemapper::ArrayCoords > | face_list |
| List for results when clipping faces. | |
Each quadrilatrial has vertex coordinates and texture coordinates. The texture coordinates specify for each vertex a point on the image to be mapped to that vertex location, where the range 0 to 1 in either direction is the entirity of the image. The vertex locations are the coordinates in the output in pixels. (They are scaled down to fit in the preview).
A MeshManager then converts the faces specifed into a format sutible for the whatever graphics system is being used to draw them.
Definition at line 43 of file MeshRemapper.h.
|
||||||||||||||||
|
Definition at line 32 of file MeshRemapper.cpp. References image, m_pano, and visualization_state. |
|
|
Definition at line 41 of file MeshRemapper.cpp. |
|
|
Crop a face to the source image, return true if there is anything left. SetCrop() must have been called beforehand with up to date information.
Definition at line 308 of file MeshRemapper.cpp. References circle_crop_centre_x, circle_crop_centre_y, A_Polygon::Clip(), A_Polygon::ConvertToQuads(), crop_x1, crop_x2, crop_y1, crop_y2, face_list, M_PI, and MeshRemapper::Coords::tex_c. Referenced by VertexCoordRemapper::GetNextFaceCoordinates(), and TexCoordRemapper::GetNextFaceCoordinates(). |
|
|
Get the texture and vertex coordinates for the next face. The coordinates are ordered [left / right][top / bottom][x coord / y coord].
Implemented in ChoosyRemapper, LayoutRemapper, TexCoordRemapper, and VertexCoordRemapper. Referenced by MeshManager::MeshInfo::CompileList(), and ChoosyRemapper::GetNextFaceCoordinates(). |
|
|
Get a face that was produced by ClipFace.
Definition at line 356 of file MeshRemapper.cpp. References face_list, MeshRemapper::Coords::tex_c, and MeshRemapper::Coords::vertex_c. Referenced by VertexCoordRemapper::GetNextFaceCoordinates(), and TexCoordRemapper::GetNextFaceCoordinates(). |
|
|
Fill the crop values of the MeshRemapper from the source image.
Definition at line 61 of file MeshRemapper.cpp. References circle_crop, circle_crop_centre_x, circle_crop_centre_y, circle_crop_radius_x, circle_crop_radius_y, crop_mode, crop_x1, crop_x2, crop_y1, crop_y2, and image. Referenced by VertexCoordRemapper::UpdateAndResetIndex(), and TexCoordRemapper::UpdateAndResetIndex(). |
|
|
Reimplemented in ChoosyRemapper, LayoutRemapper, TexCoordRemapper, and VertexCoordRemapper. Definition at line 45 of file MeshRemapper.cpp. References VisualizationState::GetScale(), height, image, scale, visualization_state, and width. Referenced by MeshManager::MeshInfo::CompileList(), VertexCoordRemapper::UpdateAndResetIndex(), and ChoosyRemapper::UpdateAndResetIndex(). |
|
|
Definition at line 103 of file MeshRemapper.h. Referenced by SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by ClipFace(), and SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by ClipFace(), and SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by SetCrop(). |
|
|
Crop mode of the source image.
Definition at line 99 of file MeshRemapper.h. Referenced by SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by ClipFace(), and SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by ClipFace(), and SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by ClipFace(), and SetCrop(). |
|
|
Definition at line 100 of file MeshRemapper.h. Referenced by ClipFace(), and SetCrop(). |
|
|
List for results when clipping faces.
Reimplemented in TexCoordRemapper. Definition at line 118 of file MeshRemapper.h. Referenced by ClipFace(), and GiveClipFaceResult(). |
|
|
The sizes of the input images in pixels. Children should use this to scale their texture coordinates since the Tranform uses image pixels rather than scaling each image to the range 0 to 1. Definition at line 94 of file MeshRemapper.h. Referenced by UpdateAndResetIndex(). |
|
|
Definition at line 85 of file MeshRemapper.h. Referenced by MeshRemapper(), SetCrop(), and UpdateAndResetIndex(). |
|
|
Definition at line 84 of file MeshRemapper.h. Referenced by MeshRemapper(). |
|
|
The number number of units between vertex coorinates that gives a pixel in the display.
Reimplemented in LayoutRemapper. Definition at line 89 of file MeshRemapper.h. Referenced by UpdateAndResetIndex(). |
|
|
A transform to use to remap the images.
Definition at line 96 of file MeshRemapper.h. |
|
|
Definition at line 83 of file MeshRemapper.h. Referenced by MeshRemapper(), and UpdateAndResetIndex(). |
|
|
The sizes of the input images in pixels. Children should use this to scale their texture coordinates since the Tranform uses image pixels rather than scaling each image to the range 0 to 1. Definition at line 94 of file MeshRemapper.h. Referenced by UpdateAndResetIndex(). |
1.3.9.1