duongnv1996 / gekmllib Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/gekmllib
Automatically exported from code.google.com/p/gekmllib
What steps will reproduce the problem?
1. Create a ScreenOverlay
2. Add a ScreenXY
3. Call toKML()
What is the expected output? What do you see instead?
For the screenxy line, something like:
<screenXY x="0" y="1" xunits="fraction" yunits="fraction"/>
Instead we get:
<vec2><x>0.0</x><xunits>fraction</xunits><yunits>fraction</yunits></vec2>
Please use labels and text to provide additional information.
Also affects IconStly class.
Original issue reported on code.google.com by [email protected]
on 17 May 2007 at 12:23
I have a jar with all the dependencies, but unfortunately I can't upload
due to my poor internet connection. I will do so at the earliest
opportunity.
For the record, the required jars are (also listed in README.txt in
current zip):
commons-digester-1.8.jar;commons-beanutils.jar;commons-beanutils-bean-
collections.jar;commons-beanutils-core.jar;commons-collections-
3.1.jar;commons-logging.jar
All from Jakarta commons projects.
Original issue reported on code.google.com by [email protected]
on 9 Mar 2007 at 7:18
What steps will reproduce the problem?
Try adding more than one created item to an Update object.
Only the last created item will appear in the generated KML
What is the expected output? What do you see instead?
The schema supports multiple items to create (and delete and change) in one
update
What version of the product are you using? On what operating system?
trunk
Please provide any additional information below.
FYI:
http://code.google.com/apis/kml/documentation/kml_tags_beta1.html#update
<Update>
Syntax
<Update>
<targetHref>...<targetHref> <!-- URL -->
<Change>...</Change>
<Create>...</Create>
<Delete>...</Delete>
</Update>
Description
Specifies an addition, change, or deletion to KML data that has already
been loaded using the specified URL. The <targetHref> specifies the .kml or
.kmz file whose data (within Google Earth) is to be modified. <Update> is
always contained in a NetworkLinkControl. Furthermore, the file containing
the NetworkLinkControl must have been loaded by a NetworkLink. See the KML
2.1 Tutorial for a detailed example of how Update works.
Elements Specific to Update
Can contain any number of <Change>, <Create>, and <Delete> elements, which
will be processed in order.
Original issue reported on code.google.com by [email protected]
on 28 Jul 2007 at 8:17
KML uses inverted RGB string to represent color. See
http://code.google.com/apis/kml/documentation/kmlreference.html#colorstyle
SpecialCaseFormatter.toKMLString(java.awt.Color color) should be changed
to smth like:
return String.format("%02x%02x%02x%02x",
color.getAlpha(),
color.getBlue(),
color.getGreen(),
color.getRed());
Original issue reported on code.google.com by [email protected]
on 17 Jun 2008 at 4:08
Please include convenience methods for the Java time and date objects to
make it easier to generate Timespan and Timestamp objects. Also make them
accurate to at least the millisecond and possibly nanosecond.
It turns out that the JDK's Timestamp.toString() almost has the right
format for KML timestamps. So the work around right now is to substitute
"T" for the space " " generated in the .toString() method.
Original issue reported on code.google.com by [email protected]
on 28 Jul 2007 at 8:28
What steps will reproduce the problem?
1. Import KML with one Polygon of solid red color
What is the expected output? What do you see instead?
Expected: Red poly
Actual: Blue poly
What version of the product are you using? On what operating system?
0.03
Please provide any additional information below.
Color value in the KML: 7d0000ff
As I see, problem is with getColor method. It returns me blue color instead of
Red;
Original issue reported on code.google.com by [email protected]
on 30 Aug 2010 at 10:05
What steps will reproduce the problem?
1. Attempt to parse a KML file with Polygon nodes.
Example: any Sample containing Polygon nodes (e.g. from:
http://code.google.com/apis/kml/documentation/kml_tut.html#polygons)
2. The parser fails with:
java.lang.NoSuchMethodException: No such accessible method: addLinearRing()
on object: com.keithpower.gekmlib.Polygon
at
org.apache.commons.digester.Digester.createSAXException(Digester.java:3181)
at
org.apache.commons.digester.Digester.createSAXException(Digester.java:3207)
at org.apache.commons.digester.Digester.endElement(Digester.java:1225)
.........
What is the expected output? What do you see instead?
What version of the product are you using? On what operating system?
GeKmlLib.0.01
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 24 Oct 2007 at 7:36
No types at all in vec2 class.
I have the code for this completed already, just logging here for
completeness
Original issue reported on code.google.com by [email protected]
on 17 May 2007 at 12:14
Zdenek Vrablik emailed me requesting support for loading KML fragments (as
opposed to whole documents)
Original issue reported on code.google.com by [email protected]
on 29 Mar 2007 at 3:58
What steps will reproduce the problem?
Try chaining method calls like:
new IconStyle().addIcon(new Icon().setHref("icons/myicon.gif")));
object setters return void rather than "this"
What version of the product are you using? On what operating system?
head of subversion trunk
Please provide any additional information below.
This is a very welcome library since as you mentioned in your posting
XMLBeans and JaxB produce a very awkward API. It has been a pleasure to use
your implementation!
One programmer-friendly feature to add to the API would be to have the
setters return "this" rather than void. That makes it easy to chain method
calls.
Thanks for you hard work!
Rob
Original issue reported on code.google.com by [email protected]
on 30 Jun 2007 at 10:15
What steps will reproduce the problem?
1. Create a StyleMap (sm: "sm_style")
2. Create a StyleMapPair (smp1: {"normal", "normal_style"} )
3. Create a second StyleMapPair (smp2: {"highlight", "highlight_style"}
4. sm.addPair(smp1);
5. sm.addPair(smp2);
What is the expected output? What do you see instead?
Expected:
<StyleMap id="sm_style">
<Pair>
<key>normal</key>
<styleUrl>#normal_style</styleUrl>
</Pair>
<Pair>
<key>highlight</key>
<styleUrl>#highlight_style</styleUrl>
</Pair>
</StyleMap>
Obtained:
<StyleMap id="sm_style">
<Pair>
<key>highlight</key>
<styleUrl>#highlight_style</styleUrl>
</Pair>
</StyleMap>
What version of the product are you using? On what operating system?
Rev 15. Windows XP
Please provide any additional information below.
Seems like the implementation of the StyleMap only accepts one pair:
The method addPair replaces the existing pair, so only the last one is
accepted.
public void addPair(StyleMapPair value)
{
if(this.pair!=null)
{
markDeletedNode(this.pair);
}
this.pair = value;
if(value!=null)
{
value.setParent(this);
markCreatedNode(value);
}
}
Original issue reported on code.google.com by [email protected]
on 15 May 2007 at 5:34
What steps will reproduce the problem?
1. Load KML file with a networklink URL
2. call method getURL
3. always returns null
What is the expected output? What do you see instead?
Expected Link recieved null
What version of the product are you using? On what operating system?
Revision 20, XP
Please provide any additional information below.
I believe the problem exist in the KMLParser.java
in the
public void setupRules(String rootPath, Class rootClass)
{
.
.
.
//addition of code for URL
path="*/Url";
addObject(path, Link.class);
addProperties(path, LinkProperties);
addProperties(path, ObjectNodeProperties);
digester.addSetNext(path, "addUrl");
Original issue reported on code.google.com by [email protected]
on 23 Aug 2007 at 2:45
What steps will reproduce the problem?
1. Write a KML file with a ScreenOverlay with screenXY field
2. Load KML file with gekmllib
3. call toKML
What is the expected output? What do you see instead?
You should see what you read in, perhaps in a different format.
You don't see the screenXY or any other vec2 type fields.
Please use labels and text to provide additional information.
Original issue reported on code.google.com by [email protected]
on 17 May 2007 at 6:12
What steps will reproduce the problem?
1. include an outerBoundaryIs or a innerBoundaryIs to a polygon object
2. proceed with the kml file
3. check it, there will be a <boundary> tag instead of a <outerBoundaryIs>
or a <innerBoundaryIs>
What is the expected output? What do you see instead?
outerBoundaryIs and innerBoundaryIs produce a <boundary> instead of a
<outerBoundaryIs> or <innerBoundaryIs>
What version of the product are you using? On what operating system?
I'm using version 0.03
Original issue reported on code.google.com by [email protected]
on 24 May 2007 at 7:30
What steps will reproduce the problem?
0. Kml k = new Kml();
1. Document d = new Document(k);
2. Style s = new Style(d);
3. IconStyle is = new IconStyle();
4. Icon ic = new Icon();
5. ic.setHref("image.png");
6. is.addIcon(ic);
7. s.addIconStyle(is);
8. k.toKml();
What is the expected output? What do you see instead?
Icon tag includes <x>0</x><y>0</y><w>0</w><h>0</h>; this causes Google Earth to
display no icon (width, height are zero). Instead, if no x,y,w,h are set, the
KML output ought (I
think) not to include x,y,w,h tags at all.
What version of the product are you using? On what operating system?
v0.3 on Win XP Java 6
Please provide any additional information below.
Recommended source change on lines 103-106 of Icon.java inside toKml(...)
method:
if( isXDirty ) kml+="<x>"+this.x+"</x>\n";
if( isYDirty ) kml+="<y>"+this.y+"</y>\n";
if( isWDirty ) kml+="<w>"+this.w+"</w>\n";
if( isHDirty ) kml+="<h>"+this.h+"</h>\n";
Original issue reported on code.google.com by [email protected]
on 27 Jun 2007 at 7:03
What steps will reproduce the problem?
LineStyle lineStyle = new LineStyle();
lineStyle.setColor(Color.red);
What is the expected output? What do you see instead?
I expect to see a solid red line, instead I see a solid blue line.
What version of the product are you using? On what operating system?
0.03
Please provide any additional information below.
That outerBoundaryls bug caught me too.
Original issue reported on code.google.com by [email protected]
on 23 Aug 2007 at 8:14
This error was thrown when tried to parse a KML file created by
"Booking.com" website
What steps will reproduce the problem?
1. Run the LoadAndModifyExample.java with a KML file created by
"Booking.com" website
What is the expected output? What do you see instead?
Parsing failed. The error was:
22 Οκτ 2009 12:11:20 μμ org.apache.commons.digester.Digester endElement
SEVERE: End event threw exception
java.lang.NoSuchMethodException: No such accessible method:
addBalloonStyle() on object: com.keithpower.gekmlib.StyleMap
at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:214)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:217)
at org.apache.commons.digester.Rule.end(Rule.java:253)
at org.apache.commons.digester.Digester.endElement(Digester.java:1222)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.
dispatch(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1728)
at com.keithpower.gekmlib.KMLParser.parse(KMLParser.java:404)
at google_earth.LoadAndModifyExample.main(LoadAndModifyExample.java:32)
Error parsing java.lang.NoSuchMethodException: No such accessible method:
addBalloonStyle() on object: com.keithpower.gekmlib.StyleMap
Environment: Windows XP. Netbeans
Original issue reported on code.google.com by [email protected]
on 22 Oct 2009 at 9:22
Not, a bug, but an issue.
I'm using a very poor connection at the moment, and I'm having trouble
uploading anything at all.
I'll try get the code into the source control system asap.
Original issue reported on code.google.com by [email protected]
on 24 Mar 2007 at 9:34
Many of the methods in Document and Folder could be moved up to Container.
I worked around this for my purpose by adding this into Container.java:
abstract public Folder[] getFolders();
abstract public Placemark [] getPlacemarks();
I wrote a simple program that walks a document recursively, and I would
have had to duplicate code to handle both Documents and Folders identically
otherwise.
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:01
Current implementation of IconStyle uses vec2 type for hotSpot which
doesn't allow to specify x,y,xunits,yunits attributes. See
http://code.google.com/apis/kml/documentation/kmlreference.html#iconstyle
for details.
Original issue reported on code.google.com by [email protected]
on 17 Jun 2008 at 3:25
It is hard to figure out how StyleMaps, styleMapPairs etc. work.
An example on using them would be very helpful.
Original issue reported on code.google.com by [email protected]
on 6 Sep 2008 at 12:27
1. Create a kml with many Placemarks containing long LineStrings
2. Use toKML()
KML conversion would takes hours instead of seconds because of constructs
like String kml = ""; kml+="foo". Each append creates a new string (since
Strings are immutable) and copies the contents to the new string. The use
of StringBuffer fixes this issue.
Attached patch works for me but there may be more places to look for.
Original issue reported on code.google.com by [email protected]
on 7 Apr 2007 at 6:19
Attachments:
Well, dev stopped in 2007. Any plan for the future?
Original issue reported on code.google.com by [email protected]
on 30 Apr 2009 at 8:03
No a real issue, but an improvement:
It would be good to output the description within a <![CDATA[ ]]>
Block to be able to put HTML tags in the description.
What version of the product are you using? On what operating system?
Please provide any additional information below.
v. 0.03
Lib is great work!!
--Wolfgang
Original issue reported on code.google.com by [email protected]
on 11 May 2007 at 9:40
What steps will reproduce the problem?
1. Modify CreateExample.java to create many points instead of just one (see
attached). Collect the time to perform toKML()
2. Run the test for i=500,1000,2000,3000,4000
What is the expected output? What do you see instead?
It would be nice if the toKML() operation scaled order(n). Instead, it
seems to increase with the square of the number of points. Here are the
results from my test run (time in msec):
Testing 500 points: Thu Sep 06 10:05:57 EDT 2007
create placemarks 125
toKml 1610
Testing 1000 points: Thu Sep 06 10:05:58 EDT 2007
create placemarks 109
toKml 7703
Testing 2000 points: Thu Sep 06 10:06:06 EDT 2007
create placemarks 235
toKml 21641
Testing 3000 points: Thu Sep 06 10:06:28 EDT 2007
create placemarks 594
toKml 51250
Testing 4000 points: Thu Sep 06 10:07:19 EDT 2007
create placemarks 1344
toKml 79016
This may be related to issue 18, but I would think that a problem with
StringBuffer would be more linear.
What version of the product are you using? On what operating system?
I'm using the latest code from SVN as of today. The test was performed on
a Dell Opteron with an AMD64 Athlon dual core processor. Environment:
Windows XP, Sun JDK 1.5.0_10.
Please provide any additional information below.
Thank you for writing this awesome library! I'm considering using it (or
modifying it) to generate very large KML files, so the write performance is
important to me.
Original issue reported on code.google.com by [email protected]
on 6 Sep 2007 at 2:47
Attachments:
What steps will reproduce the problem?
1. Create a KML Object with 2000+ placemarks.
2. Time how long it takes for toKML(...) to run.
What is the expected output? What do you see instead?
When I timed creating a KML file with 2000+ placemarks, it took 336000
milliseconds to run. When I changed the toKML methods to use
StringBuffers and appends, it only took around 1000 milliseconds to run.
By using String Object concatenations in the toKML(...) method the memory
is not used efficiently. By using StringBuffer and append() instead of
Strings and the '+=' operator, the performance can be improve.
What version of the product are you using? On what operating system?
Version 3.
Please provide any additional information below.
None.
Original issue reported on code.google.com by [email protected]
on 26 Jul 2007 at 8:07
What version of the product are you using? On what operating system?
Head of subversion repository
Please provide any additional information below.
I've just finished up a project using KML and this library (Thanks again!)
and noticed a few shortcomings in KML that perhaps gekmllib might be able
to address until they are supported natively in KML and GE:
1.) Arrow heads for LineString
There is no support for specifying arrow heads in LineString, but they
could be generated using composites of some of the existing KML primitives
and the MultiGeometry feature.
2.) Simple (optionally filled) shapes such as arcs, ellipses, circles,
squares, etc.
Convenience functions could be written that generate the underlying
Polygon/LinearRing/Style markup given minimal user-inputs.
3.) Convenience methods to generate the update incantations.
The current Update process is fairly awkward and complicated. It'd be nice
to have a user-friendly API that generates the correct KML to allow updates
(additions and deletions) of existing elements. (It'd be nice if Google
removed the web-server requirement as well.)
Anyway, you get the idea. I think functions such as the above would make
the gekmllib even more valuable than it is currently.
Thanks again!
Rob
Original issue reported on code.google.com by [email protected]
on 25 Aug 2007 at 5:31
What steps will reproduce the problem?
1.
2.
3.
What is the expected output? What do you see instead?
KMLParser is looking for "snippet" and google calls it "Snippet", so they
don't match. Changing KMLParser to look for the uppercase version causes
the digester to blow up.
What version of the product are you using? On what operating system?
0.03
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 22 Apr 2008 at 9:02
What steps will reproduce the problem?
1. parse a kml including a polygon element
2.
3.
What is the expected output? What do you see instead?
Parsing should be OK. instead, i get this error
No such accessible method: addLinearRing() on object:
com.keithpower.gekmlib.Polygon
What version of the product are you using? On what operating system?
0.01
Please provide any additional information below.
Seems that addLinarRing should be in OutBoundaryIs and not Polygon that
nest it...
Enclosed a KML file that cannot be parsed for this reason
cheers
Original issue reported on code.google.com by [email protected]
on 21 Mar 2007 at 10:53
Attachments:
Under what license can this code be used/redistributed?
Original issue reported on code.google.com by [email protected]
on 17 Sep 2010 at 7:34
Zdenek Vrablik emailed me requesting support for Java 1.4
Original issue reported on code.google.com by [email protected]
on 29 Mar 2007 at 3:59
What steps will reproduce the problem?
1. Load a file with a Polygon that has an outerBoundaryIs or
innerBoundaryIs field
2.
3.
What is the expected output? What do you see instead?
The polygon should load with these fields. Instead, the parser ignores
these fields so that they are not loaded at all.
What version of the product are you using? On what operating system?
Current, Win XP.
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 16 Mar 2009 at 5:43
I would like this library compatible with java 1.4
I think that it is not necessary to replace all Lists with arrays.
Just remove all java 5 sysntax and all java 5 classes too.
I could help with it.
Regards
Zdenek Vrablik
Original issue reported on code.google.com by [email protected]
on 29 Mar 2007 at 4:30
What steps will reproduce the problem?
1. Load KML file with a StyleMap
2. call getStyleMap() and call getPairs() from the style map
3. The StyleMapPar[] from getPairs() is null
What is the expected output? What do you see instead?
StyleMapPar[] is not null, see null.
What version of the product are you using? On what operating system?
Current Version, XP
Please provide any additional information below.
Added Code need in KMLParser
path="*/Pair";
addObject(path, StyleMapPair.class);
addProperties(path, StyleMapPairProperties);
digester.addSetNext(path, "addPair");
Original issue reported on code.google.com by [email protected]
on 24 Sep 2007 at 5:58
What steps will reproduce the problem?
1.Polygon pol =new Polygon();
2.PolyStyle ps= new PolyStyle(pol);
3.ps.setColor("c7ffaa55");
What is the expected output? What do you see instead?
I expect to see a colored Polygon, instead in the kml code there aren't no
fields with PolyStyle or Color
What version of the product are you using? On what operating system?
.003
Please provide any additional information below.
Original issue reported on code.google.com by cbc245
on 5 May 2008 at 7:41
Attachments:
No a real issue, but an improvement:
It would be good to output the description within a <![CDATA[ ]]>
Block to be able to put HTML tags in the description.
What version of the product are you using? On what operating system?
Please provide any additional information below.
v. 0.03
Lib is great work!!
--Wolfgang
Original issue reported on code.google.com by [email protected]
on 11 May 2007 at 9:41
I've got a kml file which contains a gps track (inside a folder node).
A numberFormatException occurs in Point.updateNumericalCoordinates. I
think it's because of the syntax (look below). Points are seperated by a
newline escape char.
Perhaps just adding the \n escape char to the regular expression in
value.split() (in Point.updateNumericalCoordinates) would fix the problem.
Here is the corresponding part of the kml file:
<Folder>
<name>Logged Track</name>
<open>0</open>
<Placemark>
<name>Path255</name>
<Style>
<LineStyle>
<color>fffdff38</color>
<width>3.0</width>
</LineStyle>
</Style>
<LineString>
<tessellate>1</tessellate>
<altitudeMode>clampToGround</altitudeMode>
<coordinates>
-8.6071519397855258,41.1523204926068402,197.08
-8.6073021879635405,41.1523214879131771,170.52
-8.6060482365409801,41.1523181416110191,145.56
...
</coordinates>
</LineString>
</Placemark>
</Folder>
Original issue reported on code.google.com by [email protected]
on 19 May 2009 at 2:15
1. StringBuilder not supported must be changed to StringBuffer
2. Class containes no getSimpleName(), only getName() [same as
getName().substring(geName().lastIndexOf('.'))... I think)
only 9 changes :
Severity and Description Path Resource Location StringBuilder cannot be
resolved to a type gekmllib/src/com/keithpower/gekmlib Kml.java line 249
StringBuilder cannot be resolved to a type
gekmllib/src/com/keithpower/gekmlib Kml.java line 249
StringBuilder cannot be resolved to a type
gekmllib/src/com/keithpower/gekmlib Node.java line 182
StringBuilder cannot be resolved to a type
gekmllib/src/com/keithpower/gekmlib Node.java line 182
StringBuilder cannot be resolved to a type
gekmllib/src/com/keithpower/gekmlib Node.java line 199
StringBuilder cannot be resolved to a type
gekmllib/src/com/keithpower/gekmlib Node.java line 199
The method getSimpleName() is undefined for the type Class
gekmllib/src/com/keithpower/gekmlib Node.java line 188
The method getSimpleName() is undefined for the type Class
gekmllib/src/com/keithpower/gekmlib Node.java line 210
The method getSimpleName() is undefined for the type Class
gekmllib/src/com/keithpower/gekmlib Node.java line 214
Original issue reported on code.google.com by [email protected]
on 4 Apr 2008 at 12:25
What steps will reproduce the problem?
1. Create a document
2. Add a placemark to a folder
3. Call the updateKml method
What is the expected output? What do you see instead?
Expected:
<Create>
<Folder>
....
</Folder>
</Create>
Obtained:
<Create>
<Folder>
....
<Folder>
</Create>
What version of the product are you using? On what operating system?
Revision 15 (0.4) Windows XP.
Please provide any additional information below.
Suggested solution:
Revision 15.
trunk/src/com/keithpower/gekmlib/Node.java
209 create.append("<"
210 + newNodeParent.getClass().getSimpleName()
211 + " targetId=\"" + newNodeParent.getId() + "\">\n");
212 create.append(newNode.toKML());
213 create.append("<"
214 + newNodeParent.getClass().getSimpleName() + ">\n");
Code change:
213 create.append("</"
Original issue reported on code.google.com by [email protected]
on 11 May 2007 at 4:35
What steps will reproduce the problem?
1. StyleMap.addPair(StyleMapPair)
2. ..
3. Kml.toKml()
What is the expected output? What do you see instead?
The created node in the kml-file is called "StyleMapPair" but should just
be called "Pair". Resulting in non-default icons for placemarks can't be used.
What version of the product are you using? On what operating system?
gekmlib 0.03
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 22 Aug 2007 at 1:16
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.