Comments (41)
I've just remembered something. This might do with locale. My decimal separator is comma, not a dot. I'll try reset LC_NUMERIC to C.utf-8 and reproduce. Qt + sscanf + LC_NUMERIC is problematic and cura uses Qt. https://stackoverflow.com/questions/20555696/why-does-qt-change-behaviour-of-sscanf
(cannot test it immediately unfortunately, reporting from my cell phone, as this idea came up while I couldn't sleep)
from numpy-stl.
Yes, that's the plan. I'm working on a release as we speak :)
from numpy-stl.
Hmm, that's unfortunate.
Would you be able to attach the stl file so I can check what's wrong? It seems your file uses a slightly different format which breaks the parser.
from numpy-stl.
I've generated the stl file using openscad. I've attached both the .scad that was used to generate the .stl
file and the .stl file itself. It should only be a simple cube.
I am not completely sure if there is an issue with the file itself, since I can load the file without problem when I do not generate a MPL figure before.
from numpy-stl.
I'm still not sure what's causing it exactly, I'm not able to reproduce it myself but I suspect that matplotlib is somehow wrapping the file handlers.
For the time being it makes no sense to me... perhaps a namespace clash somehow but I have no idea what.
Are you certain you are running the latest version? It seems the line numbers in your stacktrace don't line up with the current release: https://github.com/WoLpH/numpy-stl/blob/develop/stl/_speedups.pyx#L132
from numpy-stl.
I was running version numpy-stl 2.0.0, however after upgrading to version 2.2.0 I still end up with the same error message:
Traceback (most recent call last):
File "debug_stl_from_file_error.py", line 13, in <module>
mesh=stl.Mesh.from_file(sys.argv[1],speedups=True)
File "/usr/local/lib/python2.7/dist-packages/stl/stl.py", line 318, in from_file
fh, mode=mode, speedups=speedups)
File "/usr/local/lib/python2.7/dist-packages/stl/stl.py", line 87, in load
name, data = cls._load_binary(fh, header, check_size=True)
File "/usr/local/lib/python2.7/dist-packages/stl/stl.py", line 104, in _load_binary
count, MAX_COUNT)
AssertionError: File too large, got 909389366 triangles which exceeds the maximum of 100000000
I hope the lines make more sense now. But stl.__about__.__version__
returns 2.2.0.
from numpy-stl.
Can you tell me a bit more about what software versions you are running?
Linux, Windows, osx and version?
Matplotlib version
Python version and release (2.7 regular, pypy, etc.)?
from numpy-stl.
Probably should have done this in the first post:
OS: Xubuntu 14.04 (3.13.0-61-generic)
Python: Python 2.7.6 standard installation
Matplotlib: 1.4.3
Cython (if this is any important): 0.20.1post0
Numpy: 1.12.1
from numpy-stl.
For the time being I've created a new release which falls back to the regular ascii version.
Thinking about it I may know what the issue was, I was using universal-wheels which work great if you're only running pure Python. The speedups might have been broken for everyone not running OS X
from numpy-stl.
Note that for the related Ultimaker/Cura#1785 I was not using the wheel.
from numpy-stl.
Good to know! The search goes on I suppose ;)
from numpy-stl.
Wild guess, but could it have something to do with the back-end matplotlib is using (interactive or non-interactive and some interference)?
I cannot recreate the issue unfortunately. :<
from numpy-stl.
The problem seems to have resolved itself, noone appears to be able to reproduce it anymore so that's arguably a good thing...
If anyone has the problem again let me know and I can reopen. Linked issue: Ultimaker/Cura#1785
from numpy-stl.
Once again https://bugzilla.redhat.com/show_bug.cgi?id=1589520
from numpy-stl.
I'll try to reproduce it again :)
from numpy-stl.
Yet again It only fails on me in Cura:
2018-06-10 21:08:05,827 - ERROR - [Thread-1] UM.Logger.logException [81]: Exception: Exception occurred while loading file /home/churchyard/tmp/test.stl
2018-06-10 21:08:05,828 - ERROR - [Thread-1] UM.Logger.logException [85]: Traceback (most recent call last):
2018-06-10 21:08:05,829 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 75, in load
2018-06-10 21:08:05,829 - ERROR - [Thread-1] UM.Logger.logException [85]: fh, header, speedups=speedups)
2018-06-10 21:08:05,829 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 218, in _load_ascii
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]: return _speedups.ascii_read(fh, header)
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]: File "stl/_speedups.pyx", line 129, in stl._speedups.ascii_read
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]: RuntimeError: (0, "Can't read vertex (18:b'vertex 0 2.22045e-15 -10')")
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]:
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]: During handling of the above exception, another exception occurred:
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]:
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]: Traceback (most recent call last):
2018-06-10 21:08:05,830 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/python3.6/site-packages/UM/FileHandler/ReadFileJob.py", line 62, in run
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: self.setResult(self._handler.readerRead(reader, self._filename))
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/python3.6/site-packages/UM/Mesh/MeshFileHandler.py", line 27, in readerRead
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: results = reader.read(file_name)
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 56, in read
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: self.load_file(file_name, mesh_builder, _use_numpystl = use_numpystl)
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 35, in load_file
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: self._loadWithNumpySTL(file_name, mesh_builder)
2018-06-10 21:08:05,831 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 87, in _loadWithNumpySTL
2018-06-10 21:08:05,832 - ERROR - [Thread-1] UM.Logger.logException [85]: for loaded_data in stl.mesh.Mesh.from_multi_file(file_name):
2018-06-10 21:08:05,832 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 355, in from_multi_file
2018-06-10 21:08:05,832 - ERROR - [Thread-1] UM.Logger.logException [85]: raw_data = cls.load(fh, mode=mode, speedups=speedups)
2018-06-10 21:08:05,832 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 91, in load
2018-06-10 21:08:05,833 - ERROR - [Thread-1] UM.Logger.logException [85]: name, data = cls._load_binary(fh, header, check_size=True)
2018-06-10 21:08:05,833 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 108, in _load_binary
2018-06-10 21:08:05,833 - ERROR - [Thread-1] UM.Logger.logException [85]: count, MAX_COUNT)
2018-06-10 21:08:05,833 - ERROR - [Thread-1] UM.Logger.logException [85]: AssertionError: File too large, got 538976266 triangles which exceeds the maximum of 10000000
from numpy-stl.
2018-06-10 15:45:22,552 - DEBUG - [MainThread] CuraEngineBackend.CuraEngineBackend.slice [235]: Build plate 0 has no objects to be sliced, skipping
Gtk-Message: 15:45:22.914: GtkDialog mapped without a transient parent. This is discouraged.
2018-06-10 15:45:25,489 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [277]: file:///usr/lib64/qt5/qml/QtQuick/Controls/TextField.qml:638:5: QML TextInputWithHandles: Binding loop detected for property "text"
It is once again a very long shot, but as the issue is not reproducible to me, or to Miro when not using Cura, I'll ask about this long shot. :)
Is it possible that the Cura application tries to open a dialog, and this dialog sees part of the ASCII file as a user response; effectively consuming data which should be loaded as part of the stl?
It displays a message about a mutually dependent binding of some textinput, where QML textinput:
The TextInput type displays a single line of editable plain text.
TextInput is used to accept a line of text input
That is really the only thing I can think of; and would also have a vague relation to the earlier link to a matplotlib plot (Qt backend).
UPDATE 2:
Found a sort of similar object and an explanation of what can go wrong during the binding loop..
from numpy-stl.
The stacktrace does offer me something useful, it seems it's actually trying to load the file as a binary which is useless when using from_multi_file
because binary files cannot contain multiple STLs.
By default the MODE
is set to ASCII
so the actual error is hidden right now. I'll change the code to raise
when it's in ASCII
mode since it shouldn't try to fall back to binary unless it's in AUTOMATIC
mode.
from numpy-stl.
When I rise it:
2018-06-12 16:24:40,098 - ERROR - [Thread-1] UM.Logger.logException [81]: Exception: Exception occurred while loading file /home/churchyard/tmp/test.stl
2018-06-12 16:24:40,100 - ERROR - [Thread-1] UM.Logger.logException [85]: Traceback (most recent call last):
2018-06-12 16:24:40,101 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/python3.6/site-packages/UM/FileHandler/ReadFileJob.py", line 62, in run
2018-06-12 16:24:40,101 - ERROR - [Thread-1] UM.Logger.logException [85]: self.setResult(self._handler.readerRead(reader, self._filename))
2018-06-12 16:24:40,101 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/python3.6/site-packages/UM/Mesh/MeshFileHandler.py", line 27, in readerRead
2018-06-12 16:24:40,101 - ERROR - [Thread-1] UM.Logger.logException [85]: results = reader.read(file_name)
2018-06-12 16:24:40,101 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 56, in read
2018-06-12 16:24:40,102 - ERROR - [Thread-1] UM.Logger.logException [85]: self.load_file(file_name, mesh_builder, _use_numpystl = use_numpystl)
2018-06-12 16:24:40,102 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 35, in load_file
2018-06-12 16:24:40,102 - ERROR - [Thread-1] UM.Logger.logException [85]: self._loadWithNumpySTL(file_name, mesh_builder)
2018-06-12 16:24:40,102 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 87, in _loadWithNumpySTL
2018-06-12 16:24:40,103 - ERROR - [Thread-1] UM.Logger.logException [85]: for loaded_data in stl.mesh.Mesh.from_multi_file(file_name):
2018-06-12 16:24:40,103 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 356, in from_multi_file
2018-06-12 16:24:40,103 - ERROR - [Thread-1] UM.Logger.logException [85]: raw_data = cls.load(fh, mode=mode, speedups=speedups)
2018-06-12 16:24:40,103 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 75, in load
2018-06-12 16:24:40,104 - ERROR - [Thread-1] UM.Logger.logException [85]: fh, header, speedups=speedups)
2018-06-12 16:24:40,104 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.6/site-packages/stl/stl.py", line 219, in _load_ascii
2018-06-12 16:24:40,105 - ERROR - [Thread-1] UM.Logger.logException [85]: return _speedups.ascii_read(fh, header)
2018-06-12 16:24:40,105 - ERROR - [Thread-1] UM.Logger.logException [85]: File "stl/_speedups.pyx", line 129, in stl._speedups.ascii_read
2018-06-12 16:24:40,106 - ERROR - [Thread-1] UM.Logger.logException [85]: RuntimeError: (0, "Can't read vertex (18:b'vertex 0 2.22045e-15 -10')")
from numpy-stl.
It appears to indicate that it is only getting stuck on the third facet. Might be nice for purposes of narrowing it down to test a few outlier cases:
@hroncok : 1. what happens if you try to read the same file, but with only the first 2 facets? How do the loaded vertex coordinates look for those 2 facets?
2. what happens if you remove the third facet? I'm actually secretly hoping for it to raise RuntimeError: (0, "Can't read vertex (19:b'vertex 0 2.22045e-15 -10')")
if you strictly remove the third facet. :)
from numpy-stl.
what happens if you try to read the same file, but with only the first 2 facets?
with cura? it says it's too small to load. no exception.
what happens if you remove the third facet?
RuntimeError: (0, "Can't read vertex (19:b'vertex 0 2.22045e-15 -10')")
from numpy-stl.
absolutely perfect!
That means the problem is in the scientific notation in the middle vertex coordinate. Alas we didn't get to see what happens with the scientific notation at the 3d coordinate, but we narrowed it down.
if sscanf(line, '%*s %f %f %f\n',
facet.v[i], facet.v[i]+1, facet.v[i]+2) != 3:
raise RuntimeError(state.recoverable,
'Cannot read vertex (%i:%s)' % (state.line_num, line))
is thus not compatible with the consecutive numbers "2.22045e-15 -10" here.
My mastery of C and methods of testing in this direction are so-to-say ... well... limited, but it should be reproducible now.
from numpy-stl.
#include <stdio.h>
#include <stdlib.h>
int main(void) {
float a, b, c;
if (sscanf("vertex 0 2.22045e-15 -10", "%*s %f %f %f\n", &a, &b, &c) != 3) {
printf("oh my\n");
}
printf("%f %f %f\n", a, b, c);
}
This seems to work juts fine.
from numpy-stl.
It seems to be compiler dependent as far as I can gather: https://stackoverflow.com/questions/24342982/reading-scientific-notation-in-c
It could also be size related, perhaps %lf
will work in more cases but I'll try with %e
from numpy-stl.
@hroncok actually... I don't see the newline in your error message, perhaps that's stripped somehow?
from numpy-stl.
Perhaps, yet in the C example it's not there either.
from numpy-stl.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=904919
from numpy-stl.
Thanks for linking the bug report, @hroncok .
It's really odd though: I can load the file from the bug report just fine, and I'm actually the one maintaining the Cura packages in Debian.
I should note though that I'm testing with Cura built locally on my workstation, so perhaps there is something different about the build environment?
from numpy-stl.
Yes, possibly. So far I've not been able to reproduce it either...
That certainly makes it challenging to fix
from numpy-stl.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
from numpy-stl.
I'm still getting this on Fedora 29.
Reproducer:
- get Fedora 28 or 29 Workstation (or Xfce spin) up and running
sudo dnf install cura python3-numpy-stl
cura
- load an ASCII STL
solid OpenSCAD_Model
facet normal 0 1 -0
outer loop
vertex 10 10 -10
vertex 0 10 2.22045e-15
vertex 10 10 2.22045e-15
endloop
endfacet
facet normal 0 1 0
outer loop
vertex 0 10 2.22045e-15
vertex 10 10 -10
vertex 0 10 -10
endloop
endfacet
facet normal 0 -1 -2.22045e-16
outer loop
vertex 0 2.22045e-15 -10
vertex 10 0 0
vertex 0 0 0
endloop
endfacet
facet normal 0 -1 -2.22045e-16
outer loop
vertex 10 0 0
vertex 0 2.22045e-15 -10
vertex 10 2.22045e-15 -10
endloop
endfacet
facet normal 0 -2.22045e-16 1
outer loop
vertex 0 10 2.22045e-15
vertex 10 0 0
vertex 10 10 2.22045e-15
endloop
endfacet
facet normal 0 -2.22045e-16 1
outer loop
vertex 10 0 0
vertex 0 10 2.22045e-15
vertex 0 0 0
endloop
endfacet
facet normal 1 0 0
outer loop
vertex 10 10 2.22045e-15
vertex 10 2.22045e-15 -10
vertex 10 10 -10
endloop
endfacet
facet normal 1 0 -0
outer loop
vertex 10 2.22045e-15 -10
vertex 10 10 2.22045e-15
vertex 10 0 0
endloop
endfacet
facet normal 0 0 -1
outer loop
vertex 0 2.22045e-15 -10
vertex 10 10 -10
vertex 10 2.22045e-15 -10
endloop
endfacet
facet normal -0 0 -1
outer loop
vertex 10 10 -10
vertex 0 2.22045e-15 -10
vertex 0 10 -10
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 2.22045e-15 -10
vertex 0 10 2.22045e-15
vertex 0 10 -10
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 10 2.22045e-15
vertex 0 2.22045e-15 -10
vertex 0 0 0
endloop
endfacet
endsolid OpenSCAD_Model
Result:
2018-09-28 21:42:24,381 - ERROR - [Thread-1] UM.Logger.logException [81]: Exception: Exception occurred while loading file /home/churchyard/tmp/test.stl
2018-09-28 21:42:24,396 - ERROR - [Thread-1] UM.Logger.logException [85]: Traceback (most recent call last):
2018-09-28 21:42:24,397 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/python3.7/site-packages/UM/FileHandler/ReadFileJob.py", line 62, in run
2018-09-28 21:42:24,398 - ERROR - [Thread-1] UM.Logger.logException [85]: self.setResult(self._handler.readerRead(reader, self._filename))
2018-09-28 21:42:24,398 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/python3.7/site-packages/UM/Mesh/MeshFileHandler.py", line 29, in readerRead
2018-09-28 21:42:24,399 - ERROR - [Thread-1] UM.Logger.logException [85]: results = reader.read(file_name)
2018-09-28 21:42:24,399 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 66, in read
2018-09-28 21:42:24,399 - ERROR - [Thread-1] UM.Logger.logException [85]: self.load_file(file_name, mesh_builder, _use_numpystl = use_numpystl)
2018-09-28 21:42:24,399 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 45, in load_file
2018-09-28 21:42:24,400 - ERROR - [Thread-1] UM.Logger.logException [85]: self._loadWithNumpySTL(file_name, mesh_builder)
2018-09-28 21:42:24,400 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib/uranium/plugins/FileHandlers/STLReader/STLReader.py", line 97, in _loadWithNumpySTL
2018-09-28 21:42:24,400 - ERROR - [Thread-1] UM.Logger.logException [85]: for loaded_data in stl.mesh.Mesh.from_multi_file(file_name):
2018-09-28 21:42:24,401 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.7/site-packages/stl/stl.py", line 364, in from_multi_file
2018-09-28 21:42:24,401 - ERROR - [Thread-1] UM.Logger.logException [85]: raw_data = cls.load(fh, mode=mode, speedups=speedups)
2018-09-28 21:42:24,401 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.7/site-packages/stl/stl.py", line 75, in load
2018-09-28 21:42:24,401 - ERROR - [Thread-1] UM.Logger.logException [85]: fh, header, speedups=speedups)
2018-09-28 21:42:24,402 - ERROR - [Thread-1] UM.Logger.logException [85]: File "/usr/lib64/python3.7/site-packages/stl/stl.py", line 224, in _load_ascii
2018-09-28 21:42:24,402 - ERROR - [Thread-1] UM.Logger.logException [85]: return _speedups.ascii_read(fh, header)
2018-09-28 21:42:24,409 - ERROR - [Thread-1] UM.Logger.logException [85]: File "stl/_speedups.pyx", line 132, in stl._speedups.ascii_read
2018-09-28 21:42:24,410 - ERROR - [Thread-1] UM.Logger.logException [85]: RuntimeError: (0, "Cannot read vertex (18:b'vertex 0 2.22045e-15 -10')")
from numpy-stl.
from stl import mesh
try:
from PySide2 import QtWidgets
except ImportError:
from PyQt5 import QtWidgets
app = QtWidgets.QApplication([])
your_mesh = mesh.Mesh.from_file('tests/stl_ascii/Star.stl', speedups=True)
$ LC_NUMERIC=C.utf-8 python reproducer.py
$ LC_NUMERIC=en_US.utf-8 python reproducer.py
$ LC_NUMERIC=cs_CZ.utf-8 python reproducer.py
Unable to read the file with speedups, retrying
from numpy-stl.
Same goes to cura, setting LC_NUMERIC to C.utf-8 makes the crash go away.
from numpy-stl.
That explains why I've been completely unable to reproduce it, I have my default set to C.utf-8
Excellent work @hroncok! Thank you so much :)
from numpy-stl.
This was not closed, as there was no commit with "Fixes #52". Let's close it after a release?
from numpy-stl.
I've got a few small issues getting the tests to run on my laptop (osx), which effectively results in not being able to deploy a new release. For safety I have a auto-test system in place as a pre-deploy step.
from numpy-stl.
skip the test on mac?
from numpy-stl.
I'm giving it the old college try to get it working. If it turns out to be problematic I'll skip it :)
No worries, I'll push out a release today either way
from numpy-stl.
It turned out to be a weird local error. After starting with a clean project it worked out just fine :)
Thanks again @hroncok
from numpy-stl.
from numpy-stl.
revise max_count
from numpy-stl.
Related Issues (20)
- is_closed() gives false positives for simple STLs HOT 7
- stl2ascii raises a TypeError: File handles should be in binary mode - even when writing an ASCII STL. HOT 1
- Combined STL HOT 1
- How to use `test` modules HOT 1
- Z-height HOT 5
- Graph Generation is Blank HOT 1
- Parsing ASCII STL ending with "end solid" raises exception HOT 2
- about projection area HOT 1
- shape cant find HOT 1
- Save multi-part stls HOT 3
- Possible error in volume calculations HOT 4
- Can we check if two different stl files are overlapping each other HOT 1
- saving ascii STL HOT 2
- Merge STL question HOT 4
- AttributeError: module 'stl' has no attribute 'BaseStl HOT 1
- Computing the Max Z-height for double rotation HOT 3
- More info needed on stl atributes HOT 3
- the centroids of a stl file was not update after i rotated the stl file HOT 3
- How can i find linear parameters of stl model? HOT 2
- can't make image array into *.stl HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from numpy-stl.