小编01A*_*key的帖子

一个JavaScript函数,它返回两个圆之间的x,y交点?

在此输入图像描述

我得到了两个圆的(x,y)中心位置及其半径,但我需要使用JavaScript找到它们的交点(用红色标记).

我认为就数学而言最好的解释是在这里找到的(两个圆圈的交点),但我并不真正理解数学,所以我无法实现它.

例如,d = || P1 - P0 || 什么做了|| 代表?这是否意味着最终的数字总是积极的?

并且P2 = P0 + a(P1-P0)/ d,这里的P不是(10,50)?但是在JavaScript中执行(10,50)+13会给你63,所以它只是忽略了第一个数字,那么假设会发生什么?结果应该是(23,63)这里还是?还有P1-P0部分或(40,30) - (10,60),您如何在JavaScript中表达?

javascript geometry

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

CodeMirror 6,如何获取输入/更新/更改事件的编辑器值?

我希望CodeMirror 6 编辑器实例的内容/值反映在外部变量中,当文本更改时,变量会更改/同步。

如何在CodeMirror 6中做到这一点?

伪代码

let sync_val = "";

import {EditorView} from "@codemirror/view"
import {EditorState} from "@codemirror/state"

let myView = new EditorView({
  state: EditorState.create({doc: "hello"}),
  parent: document.body
})

myView.onChange(function(val) {
  sync_val = val;
});

Run Code Online (Sandbox Code Playgroud)

text input onchange onupdate codemirror

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

在 Hugo 部分模板中,如何访问辅助/附加参数?

说我有{{ partial "li.html" $test $root.Data.Term }}

有了这个,我可以访问第一个参数,或者$test,通过简单地.li.html模板中引用,但是如何$root.Data.Term从同一个模板中访问第二个或附加参数 ( )?

go go-templates hugo

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

如何更改一个顶点的颜色而不是所有顶点的颜色?

我是OpenGL和GLSL的新手,我正在通过http://open.gl/学习它.

我已设法绘制一个三角形并使用以下方法更改所有顶点的颜色:

glUniform3f(uniColor, red, 0.0, 0.0)
Run Code Online (Sandbox Code Playgroud)

其中"红色"的值不断变化,但这会更新三角形中所有顶点的颜色值,而我只想更改一个或两个顶点.

查看代码我没看到我可以在哪里实现任何逻辑来关注一个顶点而不是全部(代码几乎完全基于http://open.gl/content/code/c2_triangle_uniform.txt)

但是在这段代码中:http://open.gl/content/code/c2_color_triangle.txt,每个顶点都有它自己的颜色,但它似乎是硬编码的,我不能随着程序的进展动态地改变颜色.

我正在猜测

uniColor = glGetUniformLocation(shader.handle, "triangleColor")
Run Code Online (Sandbox Code Playgroud)

给我一个变量的位置,我可以改变,这个变量用于更新所有顶点的颜色,也许我需要做的是创建3个变量,每个顶点一个,然后访问那些,但我怎么做去做?

如果我看一下GLSL我有一个"统一的vec3 triangleColor"; 然后用于

void main()
{
    outColor = vec4(triangleColor, 1.0);
}
Run Code Online (Sandbox Code Playgroud)

但即使我创建3个这样的triangleColor变量,我怎么能告诉void main()来区分哪个顶点获得什么变量?

代码:

import pyglet
from pyglet.gl import *
from shader import Shader
from ctypes import pointer, sizeof
import math
import time


window = pyglet.window.Window(800, 600, "OpenGL")
window.set_location(100, 100)


# Vertex Input
## Vertex Array Objects
vao = GLuint()
glGenVertexArrays(1, pointer(vao))
glBindVertexArray(vao)

## Vertex Buffer Object …
Run Code Online (Sandbox Code Playgroud)

opengl colors glsl vertex

8
推荐指数
1
解决办法
8900
查看次数

使用JSON字符串,将其解组为map [string] interface {},编辑并将其编组为[]字节似乎更复杂然后它应该是

我正在做一些非常基本的JSON操作来学习一些Go,并且它有效,除了一件事似乎关闭,我必须编写分配.(map[string]interface{}).([]interface{})访问JSON中的条目,特别是如果它们是孩子的孩子等等.

看到这里(也在Go Playground:https://play.golang.org/p/Wd-pzHqTsU):

package main

import (
    "fmt"
    "encoding/json"
)

func main() {
    JSON := []byte(`{"key1":"val1","key2":{"c1key1":"c1val1"},"key3":[{"c2key1":{"c3key1":"c3val1"}}]}`)
    fmt.Printf("%s\n", JSON)
    var d map[string]interface{}
    json.Unmarshal(JSON, &d)
    fmt.Println(d["key3"].([]interface{})[0].(map[string]interface{})["c2key1"].(map[string]interface{})["c3key1"])
    d["key3"].([]interface{})[0].(map[string]interface{})["c2key1"].(map[string]interface{})["c3key1"] = "change1"
    fmt.Println(d["key3"].([]interface{})[0].(map[string]interface{})["c2key1"].(map[string]interface{})["c3key1"])
    JSON, _ = json.Marshal(d)
    fmt.Printf("%s\n", JSON)
}
Run Code Online (Sandbox Code Playgroud)

哪个回报:

{"key1":"val1","key2":{"c1key1":"c1val1"},"key3":[{"c2key1":{"c3key1":"c3val1"}}]}
c3val1
change1
{"key1":"val1","key2":{"c1key1":"c1val1"},"key3":[{"c2key1":{"c3key1":"change1"}}]}
Run Code Online (Sandbox Code Playgroud)

现在在Python中我只是直接访问键/值而不是定义我每次访问的类型,而不是fmt.Println(d["key3"].([]interface{})[0].(map[string]interface{})["c2key1"].(map[string]interface{})["c3key1"])你做的print d["key3"][0]["c2key1"]["c3key1"]

Python示例:

import json

JSON = '{"key3": [{"c2key1": {"c3key1": "c3val1"}}], "key2": {"c1key1": "c1val1"}, "key1": "val1"}'
print JSON
d = json.loads(JSON)
print d["key3"][0]["c2key1"]["c3key1"]
d["key3"][0]["c2key1"]["c3key1"] = "change1"
print d["key3"][0]["c2key1"]["c3key1"]
JSON …
Run Code Online (Sandbox Code Playgroud)

json dictionary go

7
推荐指数
1
解决办法
3083
查看次数

Golang相当于将任何JSON转换为Python中的标准dict?

在Python中你可以做这样的事情:

r = requests.get("http://wikidata.org/w/api.php", params=params)
data = r.json()
Run Code Online (Sandbox Code Playgroud)

现在data是一个字典或哈希表(也,我不需要事先定义字典的结构),我可以通过做数据["实体"],数据["实体"] ["Q12"来访问键的值"等等

我怎么在golang做这个?到目前为止我有这个:

resp, err := http.Get("http://wikidata.org/w/api.php?"+v.Encode())
if err != nil {
    // handle error
}

defer resp.Body.Close()
decoder := json.NewDecoder(resp.Body)
var data interface{}
decodeErr := decoder.Decode(&data)
if decodeErr != nil {
    // handle error
}
fmt.Println(data["entities"], data["entities"]["Q"+id])
Run Code Online (Sandbox Code Playgroud)

这给了我编译错误: invalid operation: data["entities"] (index of type interface {})

那应该var data是什么类型的?我是否需要事先为JSON定义结构,还是可以在不修改代码的情况下处理任何JSON文件/流?

json dictionary types go

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

从 golang 执行 nodejs 脚本的最佳方法是什么,返回一个字符串,然后将该字符串返回给 golang 变量?

我目前正在与golangos/execStdoutnodejs一起做这console.log("string")件事。

基本上我需要生成一个字符串,但只能在 nodejs 中这样做,但我的大部分代码都在 golang 中,所以我试图使我的代码中的这个小点尽可能无缝、安全和可靠,我将我的程序的如此重要的部分放在“console.log”上并从 shell 输出中读取,这让我有点不安。

简而言之:我想知道我的节点和 go 代码之间是否存在更好、更标准的通信线路,然后是 console.log + shell 输出,或者这是否足够优化?

哦,我程序的这个特定部分的功能是获取一个 markdown 文本文件并使用markdown-it将其转换为 HTML 。

一些想法:

  • 通过 HTTP 通信(将数据/字符串发送到 golang http 侦听器)
  • 通过文件系统进行通信(将字符串写入临时文件并用golang读取)
  • 通过“类似于 HTTP 但特定于本地应用程序数据共享的东西”进行通信

聚苯乙烯

我不能使用 otto,因为降价 - 它不在那里运行。

实际代码:

parser.go

package main

import (
    "os"
    "os/exec"
    "fmt"
    "bytes"
)

func main() {
    cmd := "node"
    args := []string{"parser.js", "/home/user1/dev/current/wikis/Bob's Pain/markup/index.md"}
    process := exec.Command(cmd, args...)
    stdin, err := process.StdinPipe()
    if err != nil {
        fmt.Println(err) …
Run Code Online (Sandbox Code Playgroud)

string exec go node.js

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

如何从Django将JSON对象传递给FullCalendar(通过序列化模型)?

FullCalendar支持通过AJAX为它的事件接收JSON对象,这可以在初始化时或稍后完成,如下所示:

$('#calendar').fullCalendar('addEventSource', "/{{ user }}/events/" );
Run Code Online (Sandbox Code Playgroud)

我的Django视图中的序列化本身如下所示:

...
events = Event.objects.filter(user=request.user, start__gte=start, end__lte=end)
message = serializers.serialize("json", events, ensure_ascii=False)
...
Run Code Online (Sandbox Code Playgroud)

返回的JSON对象如下所示:

[{"pk": 2, "model": "main.event", "fields": {"url": null, "start": "2010-10-09 08:30:00", "end": "2010-10-09 10:30:00", "user": 1, "title": "sdf"}}, {"pk": 3, "model": "main.event", "fields": {"url": null, "start": "2010-10-03 08:30:00", "end": "2010-10-03 12:00:00", "user": 1, "title": "sdf2"}}]
Run Code Online (Sandbox Code Playgroud)

Fullcalendar事件包含以下变量:id,title,start,end,allDay和url.

我认为FullCalendar现在正在接收我的JSON对象(不确定如何检查),但它可能是不可接受的,我怎样才能使它可以被FullCalendar加入?它可能看起来像这样:

[{id: 1, title: 'Title1', start: new Date(2010, 10, 3, 8, 30), end: new Date(2010, 10, 3, 12, 0), allDay: false, url: false}]
Run Code Online (Sandbox Code Playgroud)

要么: …

django events serialization json fullcalendar

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

webpack browserify --ignore 等效吗?

我有一些代码在浏览器中不起作用,除非我“忽略”两个包,我可以用 browserify: 做到这一点browserify files.js -i fs-extra -i request --standalone files > files.browserify.js,结果代码可以正常工作,但是如果我尝试用 webpack 来做,代码会抱怨模块被丢失的。

...
  plugins: [
      new webpack.IgnorePlugin(/fs-extra$/),
      new webpack.IgnorePlugin(/request$/),
      new webpack.IgnorePlugin(/fs$/)
  ],
...
Run Code Online (Sandbox Code Playgroud)
test.webpack.js:7655 Uncaught Error: Cannot find module "request"
    at webpackMissingModule (test.webpack.js:7655)
    at Object.exports.byteLength (test.webpack.js:7655)
    at __webpack_require__ (test.webpack.js:20)
    at Object.<anonymous> (test.webpack.js:17012)
    at __webpack_require__ (test.webpack.js:20)
    at test.webpack.js:66
    at test.webpack.js:69
Run Code Online (Sandbox Code Playgroud)

我怀疑可能的WebPack不会创建一个“空存根”像browserify作用:--ignore, -i Replace a file with an empty stub. Files can be globs.

我能做些什么来解决这个问题?

资源

javascript node.js npm browserify webpack

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

如何以编程方式更改 CodeMirror 6 中的编辑器值?

打电话console.log(editor.state.doc)显示:

TextLeaf {
    text: ["Test Text"],
    length: 9,
    Symbol(Symbol.iterator): function
}
Run Code Online (Sandbox Code Playgroud)

因此,文本或编辑器值就在那里,但是如果我打电话,editor.state.doc.text = ["New Test Text"]我会丢失文本,因此这似乎不是更改它的预期方法。

我实际上该怎么做?

伪代码

editor.getDoc().setValue('New Test Text');

text editor codemirror

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

如何创建类似于"集合交叉点"的内容,以允许单个集合中缺少项目n/1次或更多次?

我想创建一个字符串列表:

a)是2个或更多列表的交互(所有列表中出现的字符串),例如:

words = [["a", "b", "c"], ["d", "a", "b"], ["f", "a", "g"]]
set.intersection(*(set(t) for t in words))
Run Code Online (Sandbox Code Playgroud)

返回:

set(['a'])
Run Code Online (Sandbox Code Playgroud)

b)是两个或多个列表的交集,除了单个字符串可能从单个集合中丢失n次,或者换句话说,在我认为必要时,字符串可能从1个或多个列表中丢失.

所以说我希望允许它从单个列表中丢失,将该逻辑应用于我应该获得的上述单词变量:

set(['a', 'b'])
Run Code Online (Sandbox Code Playgroud)

如果我允许它从2套中丢失,它将返回上述单词变量中的所有字符.

我已经设法做了一个),但我怎么做b)

python list set set-intersection python-2.7

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

如何在 Go 中定义包含 int 的切片和字符串切片?

它看起来像这样:

[[1,["a", "b", "c"]], [2,["z", "x", "y"]]]

直觉上我会做类似 [][]int[]string 的事情,但这是无效的:syntax error: unexpected [, expecting semicolon or newline or },那么我该怎么做呢?

arrays go slice multidimensional-array

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

的console.log($( "#应用程序")HTML()); 还未定义,怎么回事?

我觉得像我这样做了一千次,但现在突然当我做console.log($("#app").html());,我得到undefined了,为什么?是不是.html()假设返回#app里面的内容?

工作样本:http://jsfiddle.net/h74saumj/

jquery dom undefined console.log

0
推荐指数
1
解决办法
89
查看次数