问题标签 [stddraw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
276 浏览

java - 冻结移动的矩形

我正在做一个项目,我们应该让随机大小的矩形从墙上反弹并在每次反弹时改变颜色。

当您单击它们时,它们应该冻结在原地并变成红色。我只是无法让它们停下来,并且由于某种原因,当单击它们时它们会变慢。

这是移动矩形的类。Stackoverflow 说我需要添加上下文来解释这段代码是什么。

我需要添加的唯一另一件事是在单击所有五个框时打印“You Win”。谢谢你的帮助。

0 投票
2 回答
161 浏览

java - 多次单击后冻结移动的矩形

对于我的项目,我们应该为移动矩形分配一个介于 1 和 3 之间的随机值。每次单击后,它应该减少冻结所需的单击次数。当计数达到 0 时,它会冻结。如果冻结的矩形被另一个触摸,它应该再次开始移动,并使用一个新的随机数来表示它需要冻结的点击量。我被困在如何让它通过多次点击冻结。

}

0 投票
0 回答
32 浏览

stddraw - StdDraw 突然停止重绘

我正在使用 Bluej 中的 StdDraw 开发游戏,但是当我测试游戏时,它突然停止重新绘制屏幕并且它没有做任何其他事情。我确定问题不是无限循环,因为我已经调试了代码并且它仍然运行良好,更改变量和所有这些东西。我不知道发生了什么 :( 有人有建议吗?谢谢 :) (抱歉英语不好)

0 投票
1 回答
1401 浏览

java - 标准绘制 Java 窗口

我在使用 StdDraw 和调整窗口大小时遇到​​问题,以便出现点。我有一个带有 draw() 方法的 Point 类

然后在一个测试班我有

当我运行它时,我会弹出两个窗口,其中都没有任何内容。我假设一个是来自 Point 类的窗口,在尚未调整大小的坐标平面上绘制 (3,4) 处的点,另一个窗口是来自测试器类的调整大小的窗口,上面没有任何点。我在这里错过了什么吗?如何在不修改 Point 类的情况下让它在一个窗口中运行?

0 投票
2 回答
430 浏览

java - 库导入不起作用

stdlib即使我已将库文件添加到同一个项目中,我也无法在 Eclipse 中使用Java 中的命令。

请看问题:

图片

0 投票
0 回答
64 浏览

java - 解冻碰撞矩形?

我需要一个项目的帮助。对于这个项目,我们创建了单击时“冻结”的移动矩形。如果它们与另一个碰撞,我们还应该使冻结的矩形解冻。我已经完成了第一步,但如果它们发生碰撞,我似乎无法让矩形解冻。如果这没有意义,我深表歉意。我是 Java 和堆栈溢出的新手。这是我的课程代码。

还有我的司机。

0 投票
0 回答
1222 浏览

java - 使用 Java 绘制带有线条和紧密度参数的阿基米德螺旋线

这使用一个名为 StdDraw 的库来绘制一条线。我正在尝试制作一种螺旋绘图方法,该方法采用中心坐标、要使用的线段数、最大半径和螺旋的“紧密度”(spinRate)。

到目前为止,这是我的代码:

现在它会画一个螺旋,但如果我将 spinRate 设置为 1,我会得到:

图像

如果我将 spinRate 设置为 2,我会得到:

图像

所以半径会根据 spinRate 而变化,而不是保持不变。显然,角度并没有变得更紧。

Trig 根本不是我的事,我对这个问题有点困惑。

这是我希望它看起来像的示例:

旋转速率 1:

图像

旋转速度 2:

图像

所以你看,半径是恒定的,但它是一个更紧密的螺旋。

编辑:

这是解决方案。

0 投票
1 回答
201 浏览

java - 使用 ArrayList 创建简单版的 MS Paint

我必须使用 StdDraw 在 java 中创建一个简单版本的 MS Paint。以下是要求和我的代码:

在本课程中,我们将编写一个简单的 MS Paint 类型程序,让您绘制,然后保存/加载这些绘图。您将实现 2 个类。为您提供了第三个类,Point2D.javaPreview 文档。

绘图 此类应包含 Point2D 对象的 ArrayList。这个类还应该实现 Serializable 以便我们可以保存/加载我们的绘图。它应该包括一个将点设置为空 ArrayList 的构造函数。

它还应该包括绘制所有点的方法 draw()。

它应该包括一个方法maybeAddPoint(Point2D p)。这应该添加该点,除非它与 ArrayList 中的最后一个点相同。当用户按住鼠标一段时间而不移动它时,我们不希望同一点的一堆副本。

最后,它应该包括一个清除点列表并调用 StdDraw.clear() 的方法 clear()。

驱动程序 在 main() 中,我们将创建或加载一个绘图对象,绘制它,并允许用户对其进行编辑。

程序应尝试使用 ObjectInputStream 类从文件“savedDrawing.dat”加载绘图对象。如果由于任何原因失败,您应该打印您无法打开文件并创建一个新的空白绘图对象。(提示,创建空绘图的代码可以放在 catch 块中)。

一旦你有一个绘图对象,创建一个动画循环。在循环中,您应该检查鼠标是否已按下(StdDraw.mousePressed() 或 StdDraw.isMousePressed())。如果是,请在您的绘图中添加一个新点(好吧,也许。让您的 maybeAddPoint() 方法为您决定)。您还应该接受 2 条键盘输入。如果用户按下“C”键,(提示,检查 StdDraw.isKeyPressed() 您可能需要使用 KeyEvent 类中的键码静态常量),清除绘图。如果用户点击“Q”,请跳出你的循环。

当您退出动画循环时,使用 ObjectOutputStream 类将您的绘图对象保存到“savedDrawing.dat”文件并打印它已保存。如果由于任何原因失败,只需打印一条指示问题的消息。文件保存后(或由于某种原因无法保存),调用 System.exit() 结束程序。

我的绘画课:

我的司机:

Point2D 类:

我在 MaybeAddPoint 方法中得到一个 indexOutOfBoundsException 。它说 ArrayList 的大小为 0。在此方法中实现的 Point2D 类的 equals 方法是否错误?

0 投票
1 回答
370 浏览

java - JAVA:用于编码 GBK 的不可映射字符 (0x92)

我可以在 Eclipse 上运行它,但我不能使用 sublime3 运行它,这是怎么回事?

}

并遵循注意事项:“.\StdDraw.java 使用或覆盖已弃用的 API。” 和“使用 -Xlint 重新编译:deprecation for details。”,它仍然出现同样的错误。

0 投票
0 回答
294 浏览

java - 为什么我不能在 java 中同时使用 STDdraw 和 STDAudio 类?

我正在开发一个通过单击键盘键来播放声音的程序。我已经让它工作了,但是当我试图想象那个声音时,声音停止播放。所以我既可以播放声音,也可以制造波浪,但不能两者兼而有之。我如何让它们都工作?

}

其他两个类:

}

下一个:

}

这是标准类: https ://introcs.cs.princeton.edu/java/stdlib/javadoc/StdDraw.html https://introcs.cs.princeton.edu/java/stdlib/javadoc/StdAudio.html