我已经尝试搜索一个javascript函数,它将检测两条线是否相互交叉.
该函数将获取每一行的两个起始端点的x,y值(我们称之为A行和B行).
如果相交则返回true,否则返回false.
功能示例.如果答案使用矢量对象,我很高兴.
Function isIntersect (lineAp1x, lineAp1y, lineAp2x, lineAp2y, lineBp1x, lineBp1y, lineBp2x, lineBp2y)
{
// JavaScript line intersecting test here.
}
Run Code Online (Sandbox Code Playgroud)
一些背景信息:这段代码是我想在html5画布中制作的游戏,也是我碰撞检测的一部分.
javascript intersection collision-detection line-intersection
我试图将一个keyup事件附加到我的Angular项目中的指令.这是指令:
angular.module('clinicalApp').directive('chatContainer', function() {
return {
scope: {
encounter: '=',
count: '='
}
templateUrl: 'views/chat.container.html',
link: function(scope, elem, attrs) {
scope.count = 500;
}
};
});
Run Code Online (Sandbox Code Playgroud)
这是模板中的html:
<div class="span4 chat-container">
<div class="chat-body">
<form accept-charset="UTF-8" action="#" method="POST">
<div class="text-area-container">
<textarea id="chatBox" class="chat-box" rows="2"></textarea>
</div>
<div class="button-container btn-group btn-group-chat">
<input id="comment" class="btn btn-primary btn-small btn-comment disabled" value="Comment" ng-click="addMessage()"/>
</div>
</form>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想访问chatbox我的链接功能并将keyup事件附加到它.我知道我可以用jQuery来获取它,但这不是Angular方式.从dom中获取元素的正确方法是什么?
我最近一直在使用Canvas进行小型Java游戏,我注意到会发生许多奇怪的事情.例如,今天早些时候我创造了一个小游戏,其目标是射击敌舰并获得积分.游戏在屏幕上绘制了微小的32x32图像(有时稍微大一些),并且由于我无视的原因,游戏呈现出奇怪的效果.
例如,我的船上面有一个健康栏:

正如您在图像中看到的那样,纹理非常小.尽管如此,游戏仍然滞后,有时事情会像这样呈现不正确,例如:

如果你仔细观察健康栏的顶部,你可以看到它略微向上移动,它让我感到困惑,因为我的所有渲染都被缓冲了.
我的渲染代码:
public void render(){
BufferStrategy bs = getBufferStrategy();
if(bs == null){
createBufferStrategy(3);
return;
}
Graphics2D g = (Graphics2D)bs.getDrawGraphics();
toDrawG.setColor(new Color(0x222222));
toDrawG.fillRect(0, 0, WIDTH, HEIGHT);
draw((Graphics2D)toDrawG);
g.drawImage(toDraw, 0, 0, null);
g.dispose();
bs.show();
}
public void draw(Graphics2D g){
if(Settings.planets){
renderer.renderPlanets();
}
if(level != null){
for(int i = 0 ; i < level.entityList.size(); i++){
if(level.entityList.get(i) != null){
level.entityList.get(i).render(renderer);
}
}
}
renderer.overlayString("Space Game", 20, 20, 24, 0xFFFFFF);
renderer.overlayString(VERSION, 20, 50, 24, 0xFFFFFF);
renderer.overlayString("FPS: " + renderer.fps, 20, 70, 24, …Run Code Online (Sandbox Code Playgroud) 我对Vim很新.今晚,我了解了"yank"命令,但是当我尝试在MacVim中使用它时,它什么也没做.既不做Y也不y{motion}做.我尝试使用默认值.vimrc来排除任何奇怪的配置问题.
Google-fu让我失望了.这感觉就像一个noobie问题.我错过了一些明显的东西吗
我正在为iPhone创建一个HTML5画布游戏.我想支持视网膜和非视网膜显示器.
我的问题是,我如何支持视网膜和非视网膜显示器?
IE,这样做的一般实现是什么?我是否使用iPhone尺寸编写游戏,然后添加视网膜支持?或者我是否创建了视网膜尺寸并增加了非视网膜支持?是否最好有两个图像,一个视网膜一个非视网膜?或者只是缩小视网膜图像?视网膜和非视网膜是否有单独的帆布尺寸?我需要缩放鼠标输入吗?
基本上,我不知道实现两者的一般思路/逻辑.
干杯,J
我正在阅读这篇文章http://www.klauskomenda.com/code/javascript-programming-patterns/#revealing,并想知道我是否可以传递参数来覆盖私有属性.
// revealing module pattern
var anchorChange4 = function () {
// this will be a private property
var config = {
colors: [ "#F63", "#CC0", "#CFF" ]
}
// this will be a public method
var init = function () {
var self = this; // assign reference to current object to "self"
// get all links on the page
var anchors = document.getElementsByTagName("a");
var size = anchors.length;
for (var i = 0; i < size; i++) …Run Code Online (Sandbox Code Playgroud) 我有一个主面板,布局设置为vbox.我想在面板中添加两个单独的列表.我希望这两个列表垂直堆叠,当它们溢出主面板的底部时,面板应该只是滚动.
但是,列表似乎需要在FIT布局中设置才能显示.适合的布局不允许垂直堆叠项目.
我是否缺少布局系统的一项功能,允许我告诉列表在具有vbox布局的父级内部完全显示自己?
我有一个iPad 2画布应用程序(游戏),并希望它在新的iPad视网膜显示器上运行.
简而言之,为视网膜iPad型号拉伸/缩小iPad2图像的最佳方法是什么?
从谷歌搜索我已经看到了各种方法,但许多方法包括从视网膜大小的图像开始和缩放完成.
我还听说将视网膜质量大小的像素推向屏幕的性能很慢,并且最好以牺牲一些质量为代价来使用iPad尺寸的图像.
就像现在一样,在新的iPad上,我看到我的应用程序的左上角,这是有道理的,但与iPad 2相比,性能令人震惊.
我见过的技术包括CSS媒体查询,使用像素密度和CSS变换 - 这显然非常快.
谢谢
我在画布上画一个矩形,从矩形的中心到坐标空间中的一个随机点画一条线.
现在,我想按行矩形内的长度截断行,以便行从矩形边开始.
我怎么能这样做?
例
Pstart(1, 3),Pend(3,
1)P(2, 2)P(2, 2)了Q(10, 2).据我所知,矩形的宽度是2,我可以告诉行开始P(4, 2)而不是P(2, 2).
当该点与XY轴之一不平行时,这会变得更复杂.此外,矩形内部的长度对于对角线而言将是不同的量.
如何计算线点相对于矩形中心和线的终点的起始偏移?
可能我必须找到线穿过矩形的点,然后让线从交叉点开始.但我怎么能得到这一点呢?
我无法设置画布相对于另一个画布的位置,因此我编写了以下测试工具.
我希望在线束顶部的div中"top"和"left"指定的位置会使画布的原点相对于彼此移动.
我究竟做错了什么?
<!DOCTYPE html>
<html>
<head>
<form id='form1' style="position:relative">
<div id='d1' style="position:absolute; top:0; left:0; z-index:1">
<canvas id='canvas1' width='200' height='100'>
Your browser does not support HTML5 Canvas.
</canvas>
</div>
<div id='d2' style="position:absolute; top:50; left:50; z-index:2">
<canvas id='canvas2' width='100' height='200'>
Your browser does not support HTML5 Canvas.
</canvas>
</div>
<div id='d3' style="position:absolute; top:75; left:75; z-index:3">
<canvas id='canvas3' width='50' height='50'>
Your browser does not support HTML5 Canvas.
</canvas>
</div>
</form>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<input id='btn1' …Run Code Online (Sandbox Code Playgroud) html5-canvas ×3
javascript ×3
java ×2
angularjs ×1
canvas ×1
css ×1
css-position ×1
gwt ×1
html5 ×1
intersection ×1
iphone ×1
java-canvas ×1
math ×1
rendering ×1
sencha-touch ×1
vector ×1
vim ×1
yank ×1