小编puk*_*puk的帖子

使用Gnuplot的3D映射图不准确

我在尝试创建3D(2D映射)图时遇到问题.

我生成的数据应该创建一个3维正态分布凹凸,或者,当"映射"时,它应该看起来像一个扁平的3D图形,颜色用作第三维

我用来生成映射图的脚本如下:

#!/usr/bin/gnuplot

reset

#set terminal png
set term postscript eps enhanced

set size square
set xlabel "X position"
set ylabel "Y position"
#set zlabel "Synaptic Strength"

#Have a gradient of colors from blue (low) to red (high)
set pm3d map
set palette rgbformulae 22,13,-31

#set xrange [0:110]
#set yrange [0:80]
#set zrange [0:1]

set style line 1 lw 1

#set title "Title"

#Don't want a key
unset key

#set the number of samples
set dgrid3d 51,51

set hidden3d …
Run Code Online (Sandbox Code Playgroud)

3d graph gnuplot

5
推荐指数
1
解决办法
2772
查看次数

如何重用和覆盖继承的javascript函数

我有一个鼠标活动课程.我正在使用dojo b/c我喜欢它的OO方法

dojo.declare("MouseObject", null, {
  constructor: function(){},
  onclick : function(){...},
  _onClick : function(){...}
});
Run Code Online (Sandbox Code Playgroud)

_onClick()侦听窗口生成的鼠标按下/释放事件并确定是否发生了单击.如果有,onClick()则被称为.onClick()执行所有可能的点击共同的功能,因此每次用户点击时都需要调用它.

有时用户可能想要扩展功能onClick()是否仍然存在原始功能而无需复制粘贴它?我能想到的两种方式,我都不喜欢

dojo.declare("MouseObjectChild", [MouseObject], {
  constructor: function(){},
  onclick : function(){this.inherited(arguments);...}
});
Run Code Online (Sandbox Code Playgroud)

这有一个缺点,我必须继续创建我不需要的新类,并且两个添加一个中间函数

dojo.declare("MouseObject", null, {
      constructor: function(){},
      onclick : function(){this._onClick()...}, //child onClick
      _onClick : function(){...}, //parent onClick
      __onClick : function(){...} //listener
    });
Run Code Online (Sandbox Code Playgroud)

但这看起来不是很好的代码


作为赏金,我需要有关如何最好地解决程序 - 用户交互的专家建议.如果程序提供了一个关键功能,例如在画布上绘制一个圆圈,那么用户如何最好地与之交互.如果用户想在圆圈后面画一个三角形怎么办?圆圈前方的一个正方形?然后该程序必须提供前后方法,如下所示:

beforeDraw();
draw();
afterDraw();
Run Code Online (Sandbox Code Playgroud)

这被认为是好设计吗?我应该把函数指针放在一个数组中并按顺序调用它们吗?

javascript dojo function redefine reusability

5
推荐指数
1
解决办法
2343
查看次数

MySQL非主外键

我是一个新手,我不能把主键作为外键.对我来说,外键是指将两行表连接在一起.因此,例如,usernameuser表用作表中的外键是合乎逻辑的picture.这意味着该行中的图片属于指定的用户.但是,似乎一般做法倾向于使用无意义的数字作为主要ID.此外,外键必须/应该引用主键.如果我不知道主键,但是我知道另一个唯一的列,在这种情况下username,如何从另一个MySQL语句中获取主键,或者将外键指向非主键,该怎么办?

mysql innodb foreign-keys primary-key

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

如何将find的结果传递给vim的argadd命令

我之前发现并发布了有关如何使用:argadd而不是使用加载多个缓冲区的信息:badd.但是,我还想添加与特定模式匹配的所有子目录的所有文件.我目前的尝试看起来像这样:

:argadd !find . -name *.js -type f
Run Code Online (Sandbox Code Playgroud)

但这增加了

 51      "!find"                        line 1
 52      "~/Documents/neuro-sim/website/3.0" line 1
 53      "-name"                        line 1
 54      "*.js"                         line 1
 55      "-type"                        line 1
 56      "f"                            line 1
Run Code Online (Sandbox Code Playgroud)

到缓冲区.我需要做些什么修改才能完成这项工作?

vim file find

5
推荐指数
1
解决办法
787
查看次数

HTML Canvas在两点之间绘制弧

我发现了类似的问题,但没有答案.我画了一个这样的圆圈

ctx.strokeStyle='rgb(0,0,0)';
ctx.lineWidth=10;
ctx.beginPath();
ctx.arc(100,100,45,0,Math.PI*2,true);
ctx.closePath();
ctx.stroke();
Run Code Online (Sandbox Code Playgroud)

它给出了一个位于(100,100)半径为45的圆,加上5为线宽,使其成为半径为50的圆.现在,我想绘制完全相同的圆,但另一种颜色,只有原始的1/4环绕(想想XBOX 360红色的厄运之环).所以我尝试了这个

ctx.strokeStyle='rgb(0,250,0)';
ctx.lineWidth=10;
ctx.beginPath();
ctx.arc(100,100,45,0,Math.PI/2,true);    //use 1/4 of original angle
ctx.closePath();
ctx.stroke();
Run Code Online (Sandbox Code Playgroud)

但这有连接第一个和最后一个点的非常烦人的方面(有时我想知道是谁创建了canvas元素,就像嵌入文本时一样,但是不要让我开始那个......)

html javascript geometry canvas geometric-arc

4
推荐指数
1
解决办法
4608
查看次数

Vim插件生成Javascript文档注释

是否有一个vim插件,有点像Jsbeautify,它会自动生成JavaDoc,就像脚本文件中的注释一样.

例如,它将采取这一点

function(a , b , c){
}
Run Code Online (Sandbox Code Playgroud)

并返回

/**
 * Description.
 *
 * @param a  Description.
 * @param b  Description.
 * @param c  Description.
 */
function(a , b , c){
}
Run Code Online (Sandbox Code Playgroud)

javascript vim comments vim-plugin

4
推荐指数
1
解决办法
1399
查看次数

打开vi中的所有文件(包括隐藏文件)

我有一个像这样的文件结构

/foo/bar/
??? .foo.cfg
??? foo.cfg
??? foo.data
??? foo.py
??? .svn
?   ??? ...
?   ??? ...
?   ??? ...
??? .
??? ..
Run Code Online (Sandbox Code Playgroud)

我想打开所有隐藏和非隐藏文件到vim.我可以像这样手动完成

vi .foo.cfg foo.cfg foo.data foo.py
Run Code Online (Sandbox Code Playgroud)

但是当有100多个文件时,这不起作用.我也试过以下但没有成功

#hidden files not loaded
vi *

#Includes folders and '.' and '..'
vi * .*

#loads files one at a time
for i in `ls -a` ; do vi $i; done;

#loads files one at a time
find . -name "*" -type f -maxdepth 1 -exec vi {} …
Run Code Online (Sandbox Code Playgroud)

vim load

4
推荐指数
1
解决办法
2247
查看次数

在'if','for','while'之后,Vim autoindent的工作方式与我的预期不同; 我怎样才能让它按照我想要的方式工作?

我在我的.vimrc文件中打开了自动缩进,set autoindent它移动到前一个缩进,就像这样(?是光标位置)

while (! skynet.selfAware()){
    DARPA.funding++;?
}
Run Code Online (Sandbox Code Playgroud)

按Enter /回车将产生

while (! skynet.selfAware()){
    DARPA.funding++;
    ?
}
Run Code Online (Sandbox Code Playgroud)

但有没有什么方法可以让vim足够聪明地意识到需要一个新的缩进,从这开始

while (! skynet.selfAware()){?
}
Run Code Online (Sandbox Code Playgroud)

按回车/回车将产生

while (! skynet.selfAware()){
    ?
}
Run Code Online (Sandbox Code Playgroud)

代替

while (! skynet.selfAware()){
?
}
Run Code Online (Sandbox Code Playgroud)

vim auto-indent

4
推荐指数
1
解决办法
914
查看次数

调整Vim中的格式规则

我不是Vim noob,但我也不是职业选手.如果我有一段,在这种情况下javascript,代码是这样的

function foo(a,b,c,d) {
if (one||two) {
if (rhyme||reason) {
return true;
}
return false;
}
}
Run Code Online (Sandbox Code Playgroud)

我格式化它(gg=G),我得到以下代码:

function foo(a,b,c,d) {
   if (one||two) {
      if (rhyme||reason) {
         return true;
      }
      return false;
   }
}
Run Code Online (Sandbox Code Playgroud)

这在美学上更令人愉悦.但是,如果相反我想要下面的内容(或者如果我想将上述结果转换为以下结果):

function foo( a, b, c, d ) 
{
   if ( one || two ) 
   {
      if ( rhyme || reason ) 
      {
         return true;
      }
      return false;
   }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法指示Vim如何解析代码?我可以使用带有正则表达式的hack来查找parantheses和pad空格,但是当一个人也考虑所有的运算符时它会崩溃(!,%,*,-,+,=,/)

vim formatting

4
推荐指数
1
解决办法
325
查看次数

使用 vim 的 Tabularize 插件仅匹配第一次出现的分隔符

由于无法找到一个基于 Linux 的 SQL 美化器来将我的 mySQL 代码片段通过管道传输到,我将满足于简单地将我的 mySQL 代码制成表格。我想把这个:

CREATE TABLE IF NOT EXISTS GROUP
(
   ID INT NOT NULL AUTO_INCREMENT,
   GROUPNAME VARCHAR(15) UNIQUE,
   ACTIVE BOOLEAN DEFAULT TRUE,

   PRIMARY KEY(ID)
)ENGINE=InnoDB
Run Code Online (Sandbox Code Playgroud)

进入这个

CREATE TABLE IF NOT EXISTS GROUP
(
   ID         INT NOT NULL AUTO_INCREMENT,
   GROUPNAME  VARCHAR(15) UNIQUE,
   ACTIVE     BOOLEAN DEFAULT TRUE,

   PRIMARY KEY(ID)
)ENGINE=InnoDB
Run Code Online (Sandbox Code Playgroud)

但如果我这样做:Tabularize /\我会得到

CREATE TABLE IF NOT EXISTS GROUP
(
        ID          INT           NOT        NULL         AUTO_INCREMENT,
        USERID      INT           NOT        NULL,
        GROUPNAME   VARCHAR(15)   UNIQUE,
        ACTIVE      BOOLEAN       DEFAULT …
Run Code Online (Sandbox Code Playgroud)

php mysql format vim

4
推荐指数
1
解决办法
400
查看次数