@Pure
	public Point2d getPointAt(int groupIndex, int indexInGroup) {
		final int startIndex = firstInGroup(groupIndex);

		// Besure that the member's index is in the group index's range
		final int groupMemberCount = getPointCountInGroup(groupIndex);
		if (indexInGroup < 0) {
			throw new IndexOutOfBoundsException(indexInGroup + "<0"); //$NON-NLS-1$
		}
		if (indexInGroup >= groupMemberCount) {
			throw new IndexOutOfBoundsException(indexInGroup + ">=" + groupMemberCount); //$NON-NLS-1$
		}

		return new Point2d(
				this.pointCoordinates[startIndex + indexInGroup * 2],
				this.pointCoordinates[startIndex + indexInGroup * 2 + 1]);
	}
@ Pure public Point2d getPointAt ( int groupIndex , int indexInGroup ) { final int startIndex = firstInGroup ( groupIndex ) ; final int groupMemberCount = getPointCountInGroup ( groupIndex ) ; if ( indexInGroup < 0 ) { throw new IndexOutOfBoundsException ( indexInGroup + "<0" ) ; } if ( indexInGroup >= groupMemberCount ) { throw new IndexOutOfBoundsException ( indexInGroup + ">=" + groupMemberCount ) ; } return new Point2d ( this . pointCoordinates [ startIndex + indexInGroup * 2 ] , this . pointCoordinates [ startIndex + indexInGroup * 2 + 1 ] ) ; }
Replies the specified point at the given index in the specified group.

@param groupIndex is the index of the group
@param indexInGroup is the index of the point in the group (0 for the
first point of the group...).
@return the point
@throws IndexOutOfBoundsException in case of error.