14 KiB
Change Log
Beta Releases
b5 - 05/15/2012
-
Breaking changes:
-
Renamed Geoscope to Cesium. To update your code, change all
Geoscope.*references toCesium.*, and reference Cesium.js instead of Geoscope.js. -
CompositePrimitive.addGroundwas removed; useCompositePrimitive.addinstead. For example, changeprimitives.addGround(polygon);to:
primitives.add(polygon); -
Moved
eastNorthUpToFixedFrameandnorthEastDownToFixedFramefunctions fromEllipsoidto a newTransformsobject. For example, changevar m = ellipsoid.eastNorthUpToFixedFrame(p);to:
var m = Cesium.Transforms.eastNorthUpToFixedFrame(p, ellipsoid); -
Label properties
fillStyleandstrokeStylewere renamed tofillColorandoutlineColor; they are also now color objects instead of strings. The labelColorproperty has been removed.For example, change
label.setFillStyle("red"); label.setStrokeStyle("#FFFFFFFF");to:
label.setFillColor({ red : 1.0, blue : 0.0, green : 0.0, alpha : 1.0 }); label.setOutlineColor({ red : 1.0, blue : 1.0, green : 1.0, alpha : 1.0 }); -
Renamed
Tipsify.TipsifytoTipsify.tipsify. -
Renamed
Tipsify.CalculateACMRtoTipsify.calculateACMR. -
Renamed
LeapSecond.CompareLeapSecondDatetoLeapSecond.compareLeapSecondDate. -
Geoscope.JSONP.getis nowCesium.jsonp.Cesium.jsonpnow takes a url, a callback function, and an options object. The previous 2nd and 4th parameters are now specified using the options object. -
TWEENis no longer globally defined, and is instead available asCesium.Tween. -
Chain.js functions such as
runare now moved toCesium.Chain.run, etc. -
Geoscope.CollectionAlgorithms.binarySearchis nowCesium.binarySearch. -
Geoscope.ContainmentTests.pointInsideTriangle2Dis nowCesium.pointInsideTriangle2D. -
Static constructor methods prefixed with "createFrom", now start with "from":
Matrix2.createfromColumnMajorArraybecomes
Matrix2.fromColumnMajorArray -
The
JulianDateconstructor no longer takes aDateobject, use the new from methods instead:new JulianDate(new Date());becomes
JulianDate.fromDate(new Date("January 1, 2011 12:00:00 EST")); JulianDate.fromIso8601("2012-04-24T18:08Z"); JulianDate.fromTotalDays(23452.23); -
JulianDate.getDateis nowJulianDate.toDate()and returns a new instance each time. -
CentralBody.logoOffsetXandlogoOffsetYhave been replaced withCentralBody.logoOffset, aCartesian2. -
TileProviders now take a proxy object instead of a string, to allow more control over how proxy URLs are built. Construct a DefaultProxy, passing the previous proxy URL, to get the previous behavior.
-
Ellipsoid.getScaledWgs84()has been removed since it is not needed. -
getXXX()methods which returned a new instance of what should really be a constant are now exposed as frozen properties instead. This should improve performance and memory pressure.Cartsian2/3/4.getUnitX()->Cartsian2/3/4.UNIT_XCartsian2/3/4.getUnitY()->Cartsian2/3/4.UNIT_YCartsian2/3/4.getUnitZ()->Cartsian3/4.UNIT_ZCartsian2/3/4.getUnitW()->Cartsian4.UNIT_WMatrix/2/3/4.getIdentity()->Matrix/2/3/4.IDENTITYQuaternion.getIdentity()->Quaternion.IDENTITYEllipsoid.getWgs84()->Ellipsoid.WGS84Ellipsoid.getUnitSphere()->Ellipsoid.UNIT_SPHERECartesian2/3/4/Cartographic.getZero()->Cartesian2/3/4/Cartographic.ZERO
-
-
Added PerformanceDisplay which can be added to a scene to display frames per second (FPS).
-
Labels now correctly allow specifying fonts by non-pixel CSS units such as points, ems, etc.
-
Added
Shapes.computeEllipseBoundaryand updatedShapes.computeCircleBoundaryto compute boundaries using arc-distance. -
Added
fileExtensionandcreditproperties toOpenStreetMapTileProviderconstruction. -
Night lights no longer disappear when
CentralBody.showGroundAtmosphereistrue.
b4 - 03/01/2012
-
Breaking changes:
-
Replaced
Geoscope.SkyFromSpaceobject withCentralBody.showSkyAtmosphereproperty. -
For mouse click and double click events, replaced
event.xandevent.ywithevent.position. -
For mouse move events, replaced
movement.startXandstartYwithmovement.startPosition. Replacedmovement.endXandmovement.endYwithmovement.endPosition. -
Scene.Picknow takes aCartesian2with the origin at the upper-left corner of the canvas. For example, code that looked like:scene.pick(movement.endX, scene.getCanvas().clientHeight - movement.endY);
becomes:
scene.pick(movement.endPosition); -
-
Added
SceneTransitionerto switch between 2D and 3D views. See the new Skeleton 2D example. -
Added
CentralBody.showGroundAtmosphereto show an atmosphere on the ground. -
Added
Camera.pickEllipsoidto get the point on the globe under the mouse cursor. -
Added
Polygon.heightto draw polygons at a constant altitude above the ellipsoid.
b3 - 02/06/2012
- Breaking changes:
- Replaced
Geoscope.ConstantsandGeoscope.TrigwithGeoscope.Math. Polygon- Replaced
setColorandgetColorwith amaterial.colorproperty. - Replaced
setEllipsoidandgetEllipsoidwith anellipsoidproperty. - Replaced
setGranularityandgetGranularitywith agranularityproperty.
- Replaced
Polyline- Replaced
setColor/getColorandsetOutlineColor/getOutlineColorwithcolorandoutlineproperties. - Replaced
setWidth/getWidthandsetOutlineWidth/getOutlineWidthwithwidthandoutlineWidthproperties.
- Replaced
- Removed
Geoscope.BillboardCollection.bufferUsage. It is now automatically determined. - Removed
Geoscope.Labelset/get functions forshadowOffset,shadowBlur,shadowColor. These are no longer supported. - Renamed
Scene.getTransitionstoScene.getAnimations. - Renamed
SensorCollectiontoSensorVolumeCollection. - Replaced
ComplexConicSensorVolume.materialwith separate materials for each surface:outerMaterial,innerMaterial, andcapMaterial. - Material renames
TranslucentSensorVolumeMaterialtoColorMaterial.DistanceIntervalSensorVolumeMaterialtoDistanceIntervalMaterial.TieDyeSensorVolumeMaterialtoTieDyeMaterial.CheckerboardSensorVolumeMaterialtoCheckerboardMaterial.PolkaDotSensorVolumeMaterialtoDotMaterial.FacetSensorVolumeMaterialtoFacetMaterial.BlobSensorVolumeMaterialtoBlobMaterial.
- Added new materials:
VerticalStripeMaterialHorizontalStripeMaterialDistanceIntervalMaterial
- Added polygon material support via the new
Polygon.materialproperty. - Added clock angle support to
ConicSensorVolumevia the newmaximumClockAngleandminimumClockAngleproperties. - Added a rectangular sensor,
RectangularPyramidSensorVolume. - Changed custom sensor to connect direction points using the sensor's radius; previously, points were connected with a line.
- Improved performance and memory usage of
BillboardCollectionandLabelCollection. - Added more mouse events.
- Added Sandbox examples for new features.
- Replaced
b2 - 12/01/2011
-
Added complex conic and custom sensor volumes, and various materials to change their appearance. See the new Sensor folder in the Sandbox.
-
Added modelMatrix property to primitives to render them in a local reference frame. See the polyline example in the Sandbox.
-
Added eastNorthUpToFixedFrame() and northEastDownToFixedFrame() to Ellipsoid to create local reference frames.
-
Added CameraFlightController to zoom smoothly from one point to another. See the new camera examples in the Sandbox.
-
Added row and column assessors to Matrix2, Matrix3, and Matrix4.
-
Added Scene, which reduces the amount of code required to use Geoscope. See the Skeleton. We recommend using this instead of explicitly calling update() and render() for individual or composite primitives. Existing code will need minor changes:
- Calls to Context.pick() should be replaced with Scene.pick().
- Primitive constructors no longer require a context argument.
- Primitive update() and render() functions now require a context argument. However, when using the new Scene object, these functions do not need to be called directly.
- TextureAtlas should no longer be created directly; instead, call Scene.getContext().createTextureAtlas().
- Other breaking changes:
-
Camera get/set functions, e.g., getPosition/setPosition were replaced with properties, e.g., position.
-
Replaced CompositePrimitive, Polygon, and Polyline getShow/setShow functions with a show property.
-
Replaced Polyline, Polygon, BillboardCollection, and LabelCollection getBufferUsage/setBufferUsage functions with a bufferUsage property.
-
Changed colors used by billboards, labels, polylines, and polygons. Previously, components were named r, g, b, and a. They are now red, green, blue, and alpha. Previously, each component's range was [0, 255]. The range is now [0, 1] floating point. For example,
color : { r : 0, g : 255, b : 0, a : 255 }
-
becomes
color : { red : 0.0, green : 1.0, blue : 0.0, alpha : 1.0 }
b1 - 09/19/2011
-
Added
Shapes.computeCircleBoundaryto compute circles. See the Sandbox. -
Changed the
EventHandlerconstructor function to take the Geoscope canvas, which ensures the mouse position is correct regardless of the canvas' position on the page. Code that previously looked like:var handler = new Geoscope.EventHandler();should now look like:
var handler = new Geoscope.EventHandler(canvas); -
Context.Pick no longer requires clamping the x and y arguments. Code that previously looked like:
var pickedObject = context.pick(primitives, us, Math.max(x, 0.0), Math.max(context.getCanvas().clientHeight - y, 0.0));can now look like:
var pickedObject = context.pick(primitives, us, x, context.getCanvas().clientHeight - y); -
Changed Polyline.setWidth and Polyline.setOutlineWidth to clamp the width to the WebGL implementation limit instead of throwing an exception. Code that previously looked like:
var maxWidth = context.getMaximumAliasedLineWidth(); polyline.setWidth(Math.min(5, maxWidth)); polyline.setOutlineWidth(Math.min(10, maxWidth));can now look like:
polyline.setWidth(5); polyline.setOutlineWidth(10); -
Improved the Sandbox:
- Code in the editor is now evaluated as you type for quick prototyping.
- Highlighting a Geoscope type in the editor and clicking the doc button in the toolbar now brings up the reference help for that type.
-
BREAKING CHANGE: The
Contextconstructor-function now takes an element instead of an ID. Code that previously looked like:var context = new Geoscope.Context("glCanvas"); var canvas = context.getCanvas();should now look like:
var canvas = document.getElementById("glCanvas"); var context = new Geoscope.Context(canvas);
b0 - 08/31/2011
- Added new Sandbox and Skeleton examples. The sandbox contains example code for common tasks. The skeleton is a bare-bones application for building upon. Most sandbox code examples can be copy and pasted directly into the skeleton.
- Added
Geoscope.Polygonfor drawing polygons on the globe. - Added
Context.pickto pick objects in one line of code. - Added
bringForward,bringToFront,sendBackward, andsendToBackfunctions toCompositePrimitiveto control the render-order for ground primitives. - Added
getShow/setShowfunctions toPolylineandCompositePrimitive. - Added new camera control and event types including
CameraFreeLookEventHandler,CameraSpindleEventHandler, andEventHandler. - Replaced
Ellipsoid.toCartesian3withEllipsoid.toCartesian. - update and
updateForPickfunctions no longer require aUniformStateargument.
Alpha Releases
a6 - 08/05/2011
- Added support for lines using
Geoscope.Polyline. See the Sandbox example. - Made
CompositePrimitive,LabelCollection, andBillboardCollectionhave consistent function names, including a newcontains()function. - Improved reference documentation layout.
a5 - 07/22/2011
- Flushed out
CompositePrimitive,TimeStandard, andLeapSecondtypes. - Improved support for browsers using ANGLE (Windows Only).
a4 - 07/15/2011
- Added
Geoscope.TimeStandardfor handling TAI and UTC time standards. - Added
Geoscope.Quaternion, which is a foundation for future camera control. - Added initial version of
Geoscope.PrimitiveCollectionto simplify rendering. - Prevented billboards/labels near the surface from getting cut off by the globe.
- See the Sandbox for example code.
- Added more reference documentation for labels.
a3 - 07/08/2011
- Added
Geoscope.LabelCollectionfor drawing text. - Added
Geoscope.JulianDateandGeoscope.TimeConstantsfor proper time handling. - See the Sandbox example for how to use the new labels and Julian date.
a2 - 07/01/2011
- Added
Geoscope.ViewportQuadandGeoscope.Rectangle(foundations for 2D map). - Improved the visual quality of cloud shadows.
a1 - 06/24/2011
- Added
SunPositiontype to compute the sun position for a julian date. - Simplified picking. See the mouse move event in the Sandbox example.
Cartographic2andCartographic3are now mutable types.- Added reference documentation for billboards.
a0 - 06/17/2011
- Initial Release.