小编Jar*_*rod的帖子

测试两条线是否相交 - JavaScript函数

我已经尝试搜索一个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

26
推荐指数
6
解决办法
4万
查看次数

如何访问Angular指令中的dom元素

我试图将一个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中获取元素的正确方法是什么?

angularjs

25
推荐指数
1
解决办法
9万
查看次数

画布 - 良好的渲染实践?

我最近一直在使用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)

java rendering

17
推荐指数
2
解决办法
5579
查看次数

Vim"yank"似乎不起作用

我对Vim很新.今晚,我了解了"yank"命令,但是当我尝试在MacVim中使用它时,它什么也没做.既不做Y也不y{motion}做.我尝试使用默认值.vimrc来排除任何奇怪的配置问题.

Google-fu让我失望了.这感觉就像一个noobie问题.我错过了一些明显的东西吗

vim yank

14
推荐指数
3
解决办法
9574
查看次数

html5画布游戏 - 如何添加视网膜支持

我正在为iPhone创建一个HTML5画布游戏.我想支持视网膜和非视网膜显示器.

我的问题是,我如何支持视网膜和非视网膜显示器?

IE,这样做的一般实现是什么?我是否使用iPhone尺寸编写游戏,然后添加视网膜支持?或者我是否创建了视网膜尺寸并增加了非视网膜支持?是否最好有两个图像,一个视网膜一个非视网膜?或者只是缩小视网膜图像?视网膜和非视网膜是否有单独的帆布尺寸?我需要缩放鼠标输入吗?

基本上,我不知道实现两者的一般思路/逻辑.

干杯,J

iphone html5 retina-display html5-canvas

10
推荐指数
3
解决办法
1万
查看次数

如何将参数传递给模块模式以覆盖JavaScript中的默认值[private properties]?

我正在阅读这篇文章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)

javascript

6
推荐指数
1
解决办法
7183
查看次数

如何在VBOX布局中显示Sencha Touch列表?

我有一个主面板,布局设置为vbox.我想在面板中添加两个单独的列表.我希望这两个列表垂直堆叠,当它们溢出主面板的底部时,面板应该只是滚动.

但是,列表似乎需要在FIT布局中设置才能显示.适合的布局不允许垂直堆叠项目.

我是否缺少布局系统的一项功能,允许我告诉列表在具有vbox布局的父级内部完全显示自己?

sencha-touch

6
推荐指数
1
解决办法
4631
查看次数

将非视网膜画布应用更新为视网膜显示

我有一个iPad 2画布应用程序(游戏),并希望它在新的iPad视网膜显示器上运行.

简而言之,为视网膜iPad型号拉伸/缩小iPad2图像的最佳方法是什么?

从谷歌搜索我已经看到了各种方法,但许多方法包括从视网膜大小的图像开始和缩放完成.

我还听说将视网膜质量大小的像素推向屏幕的性能很慢,并且最好以牺牲一些质量为代价来使用iPad尺寸的图像.

就像现在一样,在新的iPad上,我看到我的应用程序的左上角,这是有道理的,但与iPad 2相比,性能令人震惊.

我见过的技术包括CSS媒体查询,使用像素密度和CSS变换 - 这显然非常快.

谢谢

javascript canvas retina-display html5-canvas

6
推荐指数
1
解决办法
1493
查看次数

线交叉矩形 - 如何找到交叉点?

我在画布上画一个矩形,从矩形的中心到坐标空间中的一个随机点画一条线.

现在,我想按行矩形内的长度截断行,以便行从矩形边开始.

我怎么能这样做?

  • 矩形可以通过2点来定义:Pstart(1, 3),Pend(3, 1)
  • 中心点可以计算为: P(2, 2)
  • 现在画线来P(2, 2)Q(10, 2).

据我所知,矩形的宽度是2,我可以告诉行开始P(4, 2)而不是P(2, 2).

当该点与XY轴之一不平行时,这会变得更复杂.此外,矩形内部的长度对于对角线而言将是不同的量.

如何计算线点相对于矩形中心和线的终点的起始偏移?

可能我必须找到线穿过矩形的点,然后让线从交叉点开始.但我怎么能得到这一点呢?

java math gwt vector java-canvas

6
推荐指数
1
解决办法
7620
查看次数

如何使用相对/绝对定位来定位画布

我无法设置画布相对于另一个画布的位置,因此我编写了以下测试工具.

我希望在线束顶部的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)

css css-position html5-canvas

5
推荐指数
2
解决办法
5万
查看次数