blob: 9cfb6433d470d3b5cd5439d9417a3d927ad2aaeb [file] [log] [blame]
// *****************************************************************************
// Copyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency
// All rights reserved. This program and the accompanying materials
// are made available under the terms of the Eclipse Public License v1.0
// which accompanies this distribution, and is available at
// http://www.eclipse.org/legal/epl-v10.html
//
// Contributors:
// Pierre Allard - initial API and implementation
// Regent L'Archeveque
//
// SPDX-License-Identifier: EPL-1.0
// *****************************************************************************
@GenModel(prefix="ApogyCommonGeometryData3DUI",
childCreationExtenders="true",
extensibleProviderFactory="true",
multipleEditorPages="false",
copyrightText="*******************************************************************************
Copyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
Contributors:
Pierre Allard - initial API and implementation
Regent L'Archeveque
SPDX-License-Identifier: EPL-1.0
*******************************************************************************",
modelName="ApogyCommonGeometryData3DUI",
complianceLevel="8.0",suppressGenModelAnnotations="false",
dynamicTemplates="true",
templateDirectory="platform:/plugin/org.eclipse.apogy.common.emf.codegen/templates")
@GenModel(modelDirectory="/org.eclipse.apogy.common.geometry.data3d.ui/src-gen")
@GenModel(editDirectory="/org.eclipse.apogy.common.geometry.data3d.ui.edit/src-gen")
package org.eclipse.apogy.common.geometry.data3d.ui
import org.eclipse.apogy.common.emf.ui.WizardPagesProvider
import org.eclipse.apogy.common.geometry.data3d.CartesianCoordinatesSet
import org.eclipse.apogy.common.geometry.data3d.ColoredCartesianCoordinatesSet
import org.eclipse.apogy.common.geometry.data3d.CartesianTriangularMesh
import org.eclipse.apogy.common.images.AbstractEImage
import org.eclipse.apogy.common.topology.ui.MeshPresentationMode
import org.eclipse.apogy.common.topology.ui.NodePresentation
import org.eclipse.apogy.common.Apogy
/**
* NodePresentation for CartesianCoordinatesSet.
*/
@Apogy(hasCustomClass="true")
class CartesianCoordinatesSetPresentation extends NodePresentation
{
/**
* The CartesianCoordinatesSet associated with this NodePresentation.
*/
@GenModel(notify="true", property="Readonly", propertyCategory="PRESENTATION_INTERNAL_INFORMATION", children="false")
refers CartesianCoordinatesSet pointCloud
/**
* The point size to use to display the points in the CartesianCoordinatesSet.
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
int pointSize = "1"
/**
* The number of point being displayed.
*/
@GenModel(notify="true", property="Readonly", propertyCategory="COORDINATES_SET_INFORMATION", children="false")
readonly derived transient int numberOfPoints
}
/**
* NodePresentation for ColoredCartesianCoordinatesSet.
*/
@Apogy(hasCustomClass="true")
class ColoredCartesianCoordinatesSetPresentation extends CartesianCoordinatesSetPresentation
{
/**
* Whether or not to override the point color present in the data by the one specified by this
* NodePresentation (i.e. use the NodePresentation color instead of the color found in the points).
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
boolean overrideColor = "false"
/**
* The ColoredCartesianCoordinatesSet associated with this NodePresentation.
*/
@GenModel(notify="true", property="Readonly", propertyCategory="PRESENTATION_INTERNAL_INFORMATION", children="false")
refers ColoredCartesianCoordinatesSet coloredPointCloud
}
/**
* NodePresentation for CartesianTriangularMesh.
*/
@Apogy(hasCustomClass="true")
class CartesianTriangularMeshPresentation extends NodePresentation
{
/**
* The CartesianTriangularMesh associated with this NodePresentation.
*/
@GenModel(notify="true", property="Readonly", propertyCategory="PRESENTATION_INTERNAL_INFORMATION", children="false")
refers readonly derived transient CartesianTriangularMesh mesh
/**
* The point size to use to display the points in the CartesianTriangularMesh. Points are visible when setting the
* presentationMode to MeshPresentationMode.POINTS.
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
int pointSize = "1"
/**
* The number of point being displayed.
*/
@GenModel(notify="true", property="Readonly", propertyCategory="MESH_INFORMATION", children="false")
readonly derived transient int numberOfPoints
/**
* The number of polygons (trangles) being displayed.
*/
@GenModel(notify="true", property="Readonly", propertyCategory="MESH_INFORMATION", children="false")
readonly derived transient int numberOfPolygons
/**
* The mesh presentation mode (i.e. how the mesh is drawn).
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
MeshPresentationMode presentationMode ="SURFACE"
/**
* The transparency of the mesh. Currently not supported.
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
float transparency
/**
* Whether or not to make use of shading in the rendering of the mesh.
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
boolean useShading="true"
/**
* An image to be used as a texture.
* Note that the image will be applied using the relative
* coordinates of the mesh (i.e. relative to its minimum X and Y).
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
refers transient AbstractEImage textureImage
}
/**
* Class representing the presentation attributes for a ColoredCartesianTriangularMesh.
*/
@Apogy(hasCustomClass="true")
class ColoredTriangularMeshPresentation extends CartesianTriangularMeshPresentation
{
/**
* Whether or not to override the triangle color present in the data by the one specified by this
* NodePresentation (i.e. use the NodePresentation color instead of the color found in the points).
*/
@GenModel(notify="true", property="Editable", propertyCategory="VISUAL_INFORMATION")
boolean overrideColor = "false"
}
/**
* Wizard support for CartesianPositionCoordinates.
*/
@Apogy(hasCustomClass="true")
class CartesianPositionCoordinatesWizardPagesProvider extends WizardPagesProvider
{
}