草庐IT

三角形

全部标签

Java BigDecimal 三角函数方法

我正在开发一个数学解析器,它能够像'5+b*sqrt(c^2)'那样计算字符串。我正在使用ANTLR进行解析并取得良好进展。现在我看到了Java类BigDecimal并想:嘿,为什么不在这里考虑精度。我的问题是JavaAPI没有为像java.lang.Math这样的BigDecimal提供三角函数方法。您知道是否有像ApacheCommons这样的优秀数学库可以处理这个问题?其他问题是如何实现幂法,以便我可以用BigDecimal计算4.9^1.4。这可能吗?也欢迎索取有关数值计算的书籍。 最佳答案 ApFloat是一个包含三角函数

java - 在 Delaunay 三角化曲面中定位包含任意点的三角形

我正在寻找基于Delaunay三角剖分的不规则采样函数z(x,y)的线性插值。假设我有一座山,我已经为其获得了Delaunay三角剖分:我知道每个三角形顶点(样本)的高度z。我想要任意点(x,y)的高度z。如何判断哪个三角形包含点(x,y)?一旦我知道了这一点,我想在三角形的三个顶点之间进行插值是相当简单的。您知道现成的实现方式吗?也许还包括插值位?我确信一定有一个开源的实现。我对Java(源代码或JAR)特别感兴趣,但任何VB风格或其他语言也可能有用。 最佳答案 可以通过walkingthroughthetriangulation

java - 三角形绘制方法

我无法使用Java中的draw(Graphicsg)方法绘制三角形。我可以像这样画一个矩形:publicvoiddraw(Graphicsg){g.setColor(colorFill);g.fillRect(p.x,p.y,width,height);g.setColor(colorBorder);g.drawRect(p.x,p.y,width,height);drawHandles(g);其中p代表“形状的左上角”。我将如何以相同的方式绘制三角形?谁能给我一个标准三角形的例子? 最佳答案 在Graphics和Graphics2

python - Scipy 稀疏三角矩阵?

我正在使用Scipy使用scipy.sparse.lil_matrix构建一个大型稀疏(250kX250k)共现矩阵。共现矩阵是三角形的;也就是说,M[i,j]==M[j,i]。由于将所有数据存储两次效率非常低(在我的情况下,不可能),因此我目前将数据存储在坐标(i,j)处,其中i始终小于j。所以换句话说,我在(2,3)处存储了一个值,在(3,2)处没有存储任何值,即使我的模型中的(3,2)应该等于(2,3)。(示例见下表)我的问题是我需要能够随机提取与给定索引对应的数据,但是,至少我目前正在这样做,一半数据在行中,一半在列中,像这样:M=[12340567008900010]因此,鉴

python - Numpy 中的克罗内克三角洲

是否有一种方便的方法来初始化根据Kroneckerdelta定义的Numpy数组?在理想世界中,会有一个名为kron_delta的函数,如果我设置M=kron_delta('ij,kl',5),则M将是一个5x5x5x5数组,其中M[i,j,k,l]=1只要i=j且k=l,否则为0。我的问题是是否存在像kron_delta这样的函数。跟进:如果不是,是否还有一种方便的方法来初始化数组delta(ijk)(即nxnxn数组,当所有索引相等时为1,否则为0)? 最佳答案 使用numpy的einsum的替代解决方案:n=5M=np.ein

python - 在 Python 中存储三角形/六角形网格的最佳方式

我正在用六边形方block制作游戏,并决定使用三角形/六边形网格。我找到了this帮助我生成坐标的问题,并稍微修改了代码以将所有坐标存储为字典中的键,其值为“。”(地板)或“X”(墙,)并包含一个函数,该函数打印出map的字符串表示形式,其中每个非空白字符代表一个六角形瓷砖。这是新代码:deltas=[[1,0,-1],[0,1,-1],[-1,1,0],[-1,0,1],[0,-1,1],[1,-1,0]]classHexGrid():def__init__(self,radius):self.radius=radiusself.tiles={(0,0,0):"X"}forrinra

python - 在图中查找 3 个节点(或三角形)的循环

我正在处理复杂的网络。我想找到在给定图中形成3个节点(或三角形)循环的节点组。由于我的图表包含大约百万条边,因此使用简单的迭代解决方案(多个“for”循环)效率不高。我正在使用python进行编程,如果这些是用于处理这些问题的一些内置模块,请告诉我。如果有人知道任何可用于在图形中查找三角形的算法,请回复。 最佳答案 假设它是一个无向图,答案就在python的networkx库中。如果你只需要计算三角形,使用:importnetworkxasnxtri=nx.triangles(g)但是如果你需要知Prop有三角形(triadic)关

蓝桥杯2021届C++B组省赛真题 杨辉三角形

分析:1.首先他要我们找第一次出现N的位置,我们可以发现杨辉三角是两边完全对称的,在右边出现的在左边一定先出现过,所以N只可能出现在左半边,我们将右半边删去2.这道题的数据规模特别大,那么我们是不是到某一行就可以停止搜索?根据上图我们可以发现,在对称线上的数都有一个规律,他们都等于由 = 可得,,所以我们可以用计算器算一下, ,所以我们只需要在0~16行内搜索即可3.由杨辉三角的一个性质:我们发现,在杨辉三角上的每一个数都满足:N= (i是行号,j是列号);例:第0行第0列=,第3行第1列=第i行第j列对应着一维数组的是:所以我们的目的就变成了找i,j由上图我们还可以发现:因为每一斜行都是单调

python - Matplotlib,避免 plot_trisurf() 中不需要的三角形

我有以下代码来创建一个圆锥体,稍后将为其应用位移场。在下图中,您可以看到在顶部绘制了一些大三角形,但在底部没有绘制。我相信有一些内部隐藏参数告诉plot_trisurf()应该创建三角形的距离,否则它们也应该在底部创建。importmatplotlib.pyplotaspltfrommpl_toolkits.mplot3dimportAxes3Dfrommatplotlibimportcmfromnumpyimportlinspace,interp,meshgrid,sin,cos,pinumel_circum=120L=38.rb,rt=(38.,16.)t1,t2=(0,2*pi)

python - 沿下三角 numpy 数组的每一行翻转非零值

我有一个下三角数组,比如B:B=np.array([[1,0,0,0],[.25,.75,0,0],[.1,.2,.7,0],[.2,.3,.4,.1]])>>>Barray([[1.,0.,0.,0.],[0.25,0.75,0.,0.],[0.1,0.2,0.7,0.],[0.2,0.3,0.4,0.1]])我想把它翻转成这样:array([[1.,0.,0.,0.],[0.75,0.25,0.,0.],[0.7,0.2,0.1,0.],[0.1,0.4,0.3,0.2]])也就是说,我想取所有正值,并在正值内反转,留下尾随零。这不是fliplr所做的:>>>np.fliplr(B