我在Win7 x64机器上运行Anaconda Python 2.7并使用
pip install PyOpenGL PyOpenGL_accelerate
Run Code Online (Sandbox Code Playgroud)
在Anaconda命令行安装PyOpenGL.
我有一些使用glutInit的代码(不是我自己必须承认的)
import sys
import math
import numpy
import OpenGL
from OpenGL.GL import *
from OpenGL.GLUT import *
import Image
import linkage
# ... a whole load of definitions etc ...
glutInit(sys.argv)
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB)
glutInitWindowSize(600, 600)
glutCreateWindow('linkage')
init()
initWindow()
glutIdleFunc(idle)
glutMainLoop()
Run Code Online (Sandbox Code Playgroud)
我通过在命令行输入以下命令来运行:
python main.py peaucellier.txt
Run Code Online (Sandbox Code Playgroud)
但后来得到以下错误(第371行是上面的glutInt(sys.argv)行)
File "C:/Users/Owner/Documents/Python Scripts/linkage/main.py", line 371, in <module>
glutInit(sys.argv)
File "C:\Anaconda\lib\site-packages\OpenGL\GLUT\special.py", line 333, in glutInit
_base_glutInit( ctypes.byref(count), holder )
File "C:\Anaconda\lib\site-packages\OpenGL\platform\baseplatform.py", line 407, in __call__
self.__name__, …Run Code Online (Sandbox Code Playgroud) 我在 Angular 9 项目中安装了 FullCalendar 5
然后我在浏览器的控制台中收到此错误,页面中出现任何内容
vdom.js:3 Uncaught Error: Please import the top-level full calendar lib before attempting to import a plugin.
at Module../node_modules/@fullcalendar/common/vdom.js (vdom.js:3)
at __webpack_require__ (bootstrap:79)
at Module../node_modules/@fullcalendar/common/main.js (main.js:1)
at __webpack_require__ (bootstrap:79)
at Module../node_modules/@fullcalendar/daygrid/main.js (main.js:1)
at __webpack_require__ (bootstrap:79)
at Module../src/app/demo/demo.component.ts (demo.component.ts:1)
at __webpack_require__ (bootstrap:79)
at Module../src/app/Modules/app-routing.module.ts (app-routing.module.ts:1)
at __webpack_require__ (bootstrap:79)
Run Code Online (Sandbox Code Playgroud)
vdom.js:3 Uncaught Error: Please import the top-level full calendar lib before attempting to import a plugin.
at Module../node_modules/@fullcalendar/common/vdom.js (vdom.js:3)
at __webpack_require__ (bootstrap:79)
at Module../node_modules/@fullcalendar/common/main.js (main.js:1)
at __webpack_require__ …Run Code Online (Sandbox Code Playgroud)编辑:PyQt4进度条上有很多类似的帖子没有更新.他们都关注线程的问题以及程序实际更新窗口的位置.虽然有用,但我的代码结构合理,回复不实用.这里给出的接受答案很简单,重点和工作.
我在Win 7 x64机器上使用Python 2.7和PyQT 4.
我正在尝试清除我的窗口中的一个窗口小部件,一个"接受"按钮,查看代码,并用进度条替换它.
即使我关闭"接受"按钮并在输入处理循环之前添加进度条.窗口仅在循环结束后更新,进度条直接跳至100%.
我的代码,
from PyQt4 import QtCore, QtGui
import sys
import time
class CentralWidget(QtGui.QWidget):
def __init__(self, parent=None):
super(CentralWidget, self).__init__(parent)
# set layouts
self.layout = QtGui.QVBoxLayout(self)
# Poly names
self.pNames = QtGui.QLabel("Import file name", self)
self.polyNameInput = QtGui.QLineEdit(self)
# Polytype selection
self.polyTypeName = QtGui.QLabel("Particle type", self)
polyType = QtGui.QComboBox(self)
polyType.addItem("")
polyType.addItem("Random polyhedra")
polyType.addItem("Spheres")
polyType.addItem("Waterman polyhedra")
polyType.activated[str].connect(self.onActivated)
# Place widgets in layout
self.layout.addWidget(self.pNames)
self.layout.addWidget(self.polyNameInput)
self.layout.addWidget(self.polyTypeName)
self.layout.addWidget(polyType)
self.layout.addStretch()
# Combobox choice
def onActivated(self, text):
if text=="Random …Run Code Online (Sandbox Code Playgroud) Win 7、x64、Python 2.7.12
在下面的代码中,我将设置一些池进程以通过该multiprocessing.Pool.map()方法进行简单的乘法运算。输出数据收集在List_1.
注意:这是对我的实际代码的精简简化。实际应用中涉及到多个列表,个个都很大。
import multiprocessing
import numpy as np
def createLists(branches):
firstList = branches[:] * node
return firstList
def init_process(lNodes):
global node
node = lNodes
print 'Starting', multiprocessing.current_process().name
if __name__ == '__main__':
mgr = multiprocessing.Manager()
nodes = mgr.list()
pool_size = multiprocessing.cpu_count()
branches = [i for i in range(1, 21)]
lNodes = 10
splitBranches = np.array_split(branches, int(len(branches)/pool_size))
pool = multiprocessing.Pool(processes=pool_size, initializer=init_process, initargs=[lNodes])
myList_1 = pool.map(createLists, splitBranches)
pool.close()
pool.join()
Run Code Online (Sandbox Code Playgroud)
我现在添加一个额外的计算createLists()并尝试传回两个列表。
import multiprocessing
import numpy …Run Code Online (Sandbox Code Playgroud) Win 7,x64,Python 2.7
我正在尝试旋转最初位于xz平面的正方形,以使其正常与给定的3D矢量对齐.此外,我正在将方块转换为向量的开头,但这不是问题.
我走的路径如下,
1)通过给定矢量和正方形法线的叉积找到旋转轴,在这种情况下是y方向的单位矢量.
2)通过给定矢量的点积和平方法线求出旋转角度.
3)建立适当的旋转矩阵.
4)将旋转矩阵应用于正方形的顶点.
5)转换为给定向量的开始.
代码..
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import math
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
na = np.array
def rotation_matrix(axis, theta):
"""
Return the rotation matrix associated with counterclockwise rotation about
the given axis by theta radians.
"""
axis = np.asarray(axis)
axis = axis/math.sqrt(np.dot(axis, axis))
a = math.cos(theta/2.0)
b, c, d = -axis*math.sin(theta/2.0)
aa, bb, cc, dd = a*a, b*b, c*c, d*d
bc, …Run Code Online (Sandbox Code Playgroud) 我最近开始学习如何通过Android Studio对Android设备进行编程。我的第一个应用运行良好,直到今天早上升级到Android Studio 3.4。
我收到以下编译错误:
引起原因:com.android.builder.dexing.DexArchiveBuilderException:无法处理C:\ Users \ Technical.gradle \ caches \ transforms-2 \ files-2.1 \ 4f3f8638c6a9f961dae488a0387efb6b \ jars \ classes.jar
引起原因:com.android.builder.dexing.DexArchiveBuilderException:解密时出错。
引起原因:com.android.tools.r8.CompilationFailedException:编译无法完成
由以下原因引起:com.android.tools.r8.utils.AbortException:错误:仅从Android O开始支持调用自定义(--min-api 26)
有没有一种方法可以还原到我以前的Android Studio版本?
如果没有,新版本中的哪些更改导致创建dex文件失败?
我尝试按照这里的建议添加android.enableD8=true,但是没有运气。gradle.properties
编辑#1:
也已将添加添加multiDexEnabled true到应用程序build.gradle文件中的默认配置,但仍然存在相同的编译错误。
那个完整的构建文件...
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "qdivision.org.qrtracker"
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies …Run Code Online (Sandbox Code Playgroud) 首先我要明确一点,我对将图像堆栈转换为 3D 模型不感兴趣。
我有一个 *.stl 文件(三角表面网格),我想将其切回到图像堆栈中。我看过 Slic3r 和 Meshmixer,但它们都只给出 Gcode。
因此,鉴于我有表面上所有点的顶点(顺便说一下,这不是凸的)及其连接性。有哪些图书馆可以帮助解决这个问题?
我的感觉是,我需要在未穿过已知顶点的切片上插入边界。
我对 Python 和 C++ 很满意,但也愿意拓宽我的视野。
我有两个向量,posVec和dirVec谁的价值我想保持(0.0,0.0,0.0).
所以我成立了临时的载体t_pos&t_dir并改变它们的值取决于值cylCut
然后在循环的下一次迭代中,我重置临时向量.
代码:
import numpy as np
posVec = np.array([0.0,0.0,0.0]) # orginal vectors
dirVec = np.array([0.0,0.0,0.0])
print "................."
print 'Before'
print "................."
print posVec
print dirVec
print "................."
for cylCut in range(0,3):
t_pos = posVec # temporary vectors
t_dir = dirVec
if cylCut == 0: # set temp vects accordingly
print '0'
t_pos[0] = 1.0
t_dir[0] = 1.0
if cylCut == 1:
print '1'
t_pos[1] = 1.0
t_dir[1] = 1.0 …Run Code Online (Sandbox Code Playgroud) 我正在尝试生成随机凸多面体.我生成一组随机3D坐标,然后找到他们的凸壳(到目前为止一直很好).
然后我想我会使用Delaunay三角剖分给我一个凸包的三角剖分.这是我的基本理解开始显示的地方!
这是代码
import numpy as np
from scipy.spatial import ConvexHull
from scipy.spatial import Delaunay
import matplotlib as mpl
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# Generate random points & convex hull
points = np.random.rand(20,3)
hull = ConvexHull(points)
fig = plt.figure()
ax = fig.gca(projection = '3d')
# Plot hull's vertices
for vert in hull.vertices:
ax.scatter(points[vert,0], points[vert,1], zs=points[vert,2])#, 'ro')
# Calculate Delaunay triangulation & plot
tri = Delaunay(points[hull.vertices])
for simplex in tri.simplices:
vert1 = [points[simplex[0],0], points[simplex[0],1], points[simplex[0],2]]
vert2 = …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 OkHttp3 通过 WiFi 发送一些数据。
我使用创建了一个客户端,
import okhttp3.OkHttpClient;
.....
public OkHttpClient client;
Run Code Online (Sandbox Code Playgroud)
单击按钮后我设置了 websocket,
private void start() {
Request request = new Request.Builder().url("ws://192.168.1.84:81/").build();
EchoWebSocketListener listener = new EchoWebSocketListener();
WebSocket ws = client.newWebSocket(request, listener);
client.dispatcher().executorService().shutdown();
}
Run Code Online (Sandbox Code Playgroud)
其中EchoWebSocketListener是 的扩展WebSocketListener,完整列表如下。
但我在运行时不断收到以下错误...
java.lang.NullPointerException: Attempt to invoke virtual method 'okhttp3.WebSocket okhttp3.OkHttpClient.newWebSocket(okhttp3.Request, okhttp3.WebSocketListener)' on a null object reference
Run Code Online (Sandbox Code Playgroud)
当追溯到 start() 函数中的行时,
WebSocket ws = client.newWebSocket(request, listener);
Run Code Online (Sandbox Code Playgroud)
怎么会client是null?
完整代码清单:
package qdivision.org.qrtracker;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View; …Run Code Online (Sandbox Code Playgroud) 在这段代码中,我正在计算n数字的平方和n数字总和的平方之间的差。
例子 : n=3, (1+2+3)^2 -(1^2+2^2+3^2) =22
def sum_square_diff(num):
sum1=0
sum2=0
for i in range(1,num+1):
sum1 +=i**2
sum2 +=i
sum2=sum2**2
diff=sum2-sum1
return diff
if __name__=="__main__":
n=int(input())
for i in range(n):
num=int(input())
result=sum_square_diff(num)
print(result)
Run Code Online (Sandbox Code Playgroud)
这段代码是正确的,但完成执行需要太多时间。