Class AntennaModel

    • Field Detail

      • nThetaIntervals

        protected int nThetaIntervals
      • nPhiIntervals

        protected int nPhiIntervals
      • azimuth

        protected Angle azimuth
      • elevationAngle

        protected Angle elevationAngle
      • gainOffset

        protected double gainOffset
      • gainScale

        protected double gainScale
      • nThetaPoints

        protected int nThetaPoints
      • nPhiPoints

        protected int nPhiPoints
    • Constructor Detail

    • Method Detail

      • getCurrent

        protected AntennaModel.ShapeData getCurrent()
        Returns the current shape data cache entry.
        Returns:
        the current data cache entry.
      • initialize

        protected void initialize()
        Description copied from class: AbstractShape
        Called during construction to establish any subclass-specific state such as different default values than those set by this class.
        Specified by:
        initialize in class AbstractShape
      • getPosition

        public Position getPosition()
      • setPosition

        public void setPosition​(Position position)
        Specifies the position of this model's center.
        Parameters:
        position - the position of this model's center.
      • getAzimuth

        public Angle getAzimuth()
      • setAzimuth

        public void setAzimuth​(Angle azimuth)
        Specifies an angle clockwise from north by which to rotate the model.
        Parameters:
        azimuth - the angle from north.
      • getElevationAngle

        public Angle getElevationAngle()
      • setElevationAngle

        public void setElevationAngle​(Angle elevationAngle)
        Specifies an angle to rotate the model vertically counterclockwise from the horizon. The rotation is a right-handed rotation relative to the X axis.
        Parameters:
        elevationAngle - the elevation angle.
      • getGainOffset

        public double getGainOffset()
      • setGainOffset

        public void setGainOffset​(double gainOffset)
        Specifies the gain offset in the formula: gain plotted = gain * gain scale + gain offset. The default gain offset is 0.
        Parameters:
        gainOffset - the gain offset.
      • getGainScale

        public double getGainScale()
      • setGainScale

        public void setGainScale​(double gainScale)
        Specifies the gain scale in the formula: gain plotted = gain * gain scale + gain offset. The default gain scale is 1.
        Parameters:
        gainScale - the gain offset.
      • getThetaResolution

        public int getThetaResolution()
      • setThetaResolution

        public void setThetaResolution​(int numSPoints)
        Specifies the number of plotted points in this model's north-south direction. The default is 61.
        Parameters:
        numSPoints - the number of plotted points in the north-south direction. NOTE: this value minus one must divide 360 evenly, as in 31, 61, 91, etc.
      • getPhiResolution

        public int getPhiResolution()
      • setPhiResolution

        public void setPhiResolution​(int numTPoints)
        Specifies the number of plotted points in this model's longitudinal direction. The default is 121.
        Parameters:
        numTPoints - the number of plotted points in the longitudinal direction. NOTE: this value minus one must divide 360 evenly, as in 31, 61, 91, 181, etc.
      • getRadius

        public double getRadius()
      • getReferencePosition

        public Position getReferencePosition()
        Description copied from interface: Movable
        A position associated with the object that indicates its aggregate geographic position. The chosen position varies among implementers of this interface. For objects defined by a list of positions, the reference position is typically the first position in the list. For symmetric objects the reference position is often the center of the object. In many cases the object's reference position may be explicitly specified by the application.
        Returns:
        the object's reference position, or null if no reference position is available.
      • setColorRamp

        public void setColorRamp​(java.awt.image.BufferedImage image)
        Specifies an image to use as the color ramp for the model. The image should modulate colors in its horizontal dimension and not modulate the colors in its vertical dimension. Minimum and maximum gain values are mapped respectively to the left-most and right-most color in the image. Intermediate gain values are mapped to the color at their position in the gain interval. The image should be a power of two in both dimensions.
        Parameters:
        image - the image containing the color ramp used to color the model.
      • getColorRamp

        public java.awt.image.BufferedImage getColorRamp()
      • getExtent

        public Extent getExtent​(Globe globe,
                                double verticalExaggeration)
        Description copied from interface: ExtentHolder
        Returns the objects enclosing volume as an Extent in model coordinates, given a specified Globe and vertical exaggeration (see SceneController.getVerticalExaggeration().
        Specified by:
        getExtent in interface ExtentHolder
        Overrides:
        getExtent in class AbstractShape
        Parameters:
        globe - the Globe the object is related to.
        verticalExaggeration - the vertical exaggeration of the scene containing this object.
        Returns:
        the object's Extent in model coordinates.
      • getSector

        public Sector getSector()
        Description copied from interface: GeographicExtent
        Returns the object's geographic extent.
        Returns:
        the object's geographic extent.
      • mustApplyTexture

        protected boolean mustApplyTexture​(DrawContext dc)
        Description copied from class: AbstractShape
        Indicates whether texture should be applied to this shape. Called during rendering to determine whether texture state should be established during preparation for interior drawing.

        Note: This method always returns false during the pick pass.

        Specified by:
        mustApplyTexture in class AbstractShape
        Parameters:
        dc - the current draw context
        Returns:
        true if texture should be applied, otherwise false.
      • shouldUseVBOs

        protected boolean shouldUseVBOs​(DrawContext dc)
        Description copied from class: AbstractShape
        Indicates whether this shape should use OpenGL vertex buffer objects.
        Overrides:
        shouldUseVBOs in class AbstractShape
        Parameters:
        dc - the current draw context.
        Returns:
        true if this shape should use vertex buffer objects, otherwise false.
      • mustRegenerateGeometry

        protected boolean mustRegenerateGeometry​(DrawContext dc)
        Description copied from class: AbstractShape
        Indicates whether this shape's renderable geometry must be recomputed, either as a result of an attribute or property change or the expiration of the geometry regeneration interval.

        A AbstractShape.AbstractShapeData must be current when this method is called.

        Overrides:
        mustRegenerateGeometry in class AbstractShape
        Parameters:
        dc - the current draw context.
        Returns:
        true if this shape's geometry must be regenerated, otherwise false.
      • drawModel

        public void drawModel​(DrawContext dc,
                              int displayMode,
                              boolean showTexture)
      • makeNormals

        protected void makeNormals()
      • putVec

        protected void putVec​(int i,
                              int j,
                              Vec4 vec,
                              java.nio.FloatBuffer buffer)
      • fillVBO

        protected void fillVBO​(DrawContext dc)
        Description copied from class: AbstractShape
        Fill this shape's vertex buffer objects. If the vertex buffer object resource IDs don't yet exist, create them.

        A AbstractShape.AbstractShapeData must be current when this method is called.

        Specified by:
        fillVBO in class AbstractShape
        Parameters:
        dc - the current draw context.
      • moveTo

        public void moveTo​(Position position)
        Description copied from interface: Movable
        Move the shape over the globe's surface while maintaining its original azimuth, its orientation relative to North.
        Parameters:
        position - the new position of the shape's reference position.
      • intersect

        public java.util.List<Intersection> intersect​(Line line,
                                                      Terrain terrain)
                                               throws java.lang.InterruptedException
        Description copied from class: AbstractShape
        Compute the intersections of a specified line with this shape. If the shape's altitude mode is other than WorldWind.ABSOLUTE, the shape's geometry is created relative to the specified terrain rather than the terrain used during rendering, which may be at lower level of detail than required for accurate intersection determination.
        Specified by:
        intersect in class AbstractShape
        Parameters:
        line - the line to intersect.
        terrain - the Terrain to use when computing the shape's geometry.
        Returns:
        a list of intersections identifying where the line intersects the shape, or null if the line does not intersect the shape.
        Throws:
        java.lang.InterruptedException - if the operation is interrupted.
        See Also:
        Terrain
      • doExportAsKML

        protected void doExportAsKML​(javax.xml.stream.XMLStreamWriter xmlWriter)
                              throws java.io.IOException,
                                     javax.xml.stream.XMLStreamException
        Description copied from class: AbstractShape
        Exports shape-specific fields.
        Specified by:
        doExportAsKML in class AbstractShape
        Parameters:
        xmlWriter - the export writer to write to.
        Throws:
        java.io.IOException - if an IO error occurs while writing to the output destination.
        javax.xml.stream.XMLStreamException - if an exception occurs converting this shape's fields to XML.