我有以下代码:
total_frames = 50
cv2.cv.NamedWindow("Dragonfly Simulation")
cv2.cv.StartWindowThread()
for i in range(total_frames):
# do stuff
img_name = # something
img = cv2.cv.LoadImage(img_name)
cv2.cv.ShowImage("Dragonfly Simulation", img)
cv2.cv.WaitKey(2)
cv2.cv.DestroyWindow("Dragonfly Simulation")
cv2.cv.WaitKey(1)
# rest of code
Run Code Online (Sandbox Code Playgroud)
那么它做了什么:
但是在这种情况下,我有total_frame之前给出的.我不希望这样.
相反,我想要一个执行以下操作的代码:
但是,我在OpenCV中找不到可以检测用户何时关闭窗口的函数.有人可以建议一个解决方法吗?
我知道这个问题有一些类似的问题,但我没有一个解决方案可以帮助我.
我正在使用AngularJS并想要检测滚动事件.我尝试了很多关于如何获取事件的版本,但是最初它会在首次加载时触发,然后再也不会.
我上次尝试的代码如下:
$($window).on('scroll', alert('scrolled'));
Run Code Online (Sandbox Code Playgroud)
但我也试过这个:
还有更多,但没有任何作用.
谁能告诉我我做错了什么?
更新:我尝试了指令的东西,这与safari BUT完全正常,但不与chrome.这是怎么回事?
Update2:使用shift键时,它适用于chrome移动视图.铬到苹果触控板有什么限制吗?WTF?
我正在使用Angular和传单,并希望构建一个具有不同标记的地图,例如:船舶和桥梁.我想单独更新它们,而无需再次删除和设置所有标记.因此,当我有新船时,我只想调用船标记,更新它们并且桥标记保持不变.
现在,我尝试过这样的事情:
angular.module('angularMapApp')
.controller('MainCtrl', ['$scope', 'RequestService', 'setShipMarkers', '$q', function($scope, RequestService, setShipMarkers, $q) {
angular.extend($scope, {
hamburg: {
lat: 53.551086,
lng: 9.993682,
zoom: 13
},
markers: {
ships: {
m1: {
lat: 42.20133,
lng: 2.19110
},
m2: {
lat: 42.21133,
lng: 2.18110
}
},
bridges: {
m3: {
lat: 42.19133,
lng: 2.18110
},
m4: {
lat: 42.3,
lng: 2.16110
}
}
},
defaults: {
tileLayer: 'http://{s}.tile.openstreetmap.de/tiles/osmde/{z}/{x}/{y}.png',
zoomControlPosition: 'topright',
tileLayerOptions: {
opacity: 0.9,
detectRetina: true,
reuseTiles: true,
},
scrollWheelZoom: false
}
}); …Run Code Online (Sandbox Code Playgroud) 我正在使用 grunt 来构建我的 Angular 项目。所以它运行良好,但在某些时候我无法再运行“gruntserve”或“gruntbuild”。每次我收到以下错误消息时
无法删除当前工作目录之外的文件
奇怪的是,我是唯一一个遇到此错误的人。我所有的同事都可以毫无错误地构建或服务。当然,我找到了一个解决方案(使用“--force”),但我认为这不是解决方案,因为我是唯一遇到此错误的人。任何人都可以向我解释这个错误,也许可以给出比强制选项更好的解决方案!
// Empties folders to start fresh
clean: {
dist: {
files: [{
dot: true,
src: [
'.tmp',
'<%= yeoman.dist %>/{,*/}*',
'!<%= yeoman.dist %>/.git{,*/}*'
]
}]
},
server: '.tmp'
},
Run Code Online (Sandbox Code Playgroud) 我正在尝试获取我的第一部分inventory_hostname。
server00122.linux.ca.domain.com
我想要的只是这个server00122部分。
我的代码:
hostName: "{{ inventory_hostname | basename }}"
Run Code Online (Sandbox Code Playgroud)
我使用上面的代码。然而,它只给了我相同的输出。
我正在做一个项目,我使用带有angularjs的ngmap 1.13.13在地图上显示了大量的船只.我想在我的地图上有自定义标记.但是我从来没有把它们放在我的地图上,或者如果它们没有缩放.我尝试了不同的方法,这里有两个:
<div ng-repeat="p in points">
<marker icon="http://www.cliparthut.com/clip-arts/823/arrowhead-clip-art-823528.png" icon.scale="0.1" position="{{p.latitude}}, {{p.longitude}}"></marker>
</div>
Run Code Online (Sandbox Code Playgroud)
也做了这个:(这里显示的图像,但规模不起作用)
<div ng-repeat="p in points">
<marker icon="{url: '../../images/delta.png', scale: 10}" position="{{p.latitude}}, {{p.longitude}}"></marker>
</div>
Run Code Online (Sandbox Code Playgroud)
但没有任何效果,图标显示得太大或根本没有显示.特别是我只想使用自定义比例的自定义图像.我看到很多其他帖子,他们在控制器中定义标记,但后来我不知道如何"告诉"我的视图它应该使用控制器中的预定义标记.
我目前正在使用 ruby on rails 3 中的表单。所以在我的项目表单中,我有一个按钮可以让用户退出这个项目。然而,奇怪的是,该button_to标签关闭了我的整个表单,我不能再使用我的提交按钮。
所以我尝试了很多,但我不明白为什么会发生这种情况。
所以这是我的表格:
<%= form_for @project, html: { class: "form-horizontal project" } do |f| %>
<div>
<%= f.label :users, 'Project Users:', :class => 'control-label', style: 'margin-bottom: 20px' %>
<div>
<% @project.users.order('last_name').each do |user| %>
<div style="margin-bottom: 15px">
<%= user.name %>
<%= button_to 'Sign Out', sign_user_out_project_path(user_id: user.id, id: @project), method: :delete, class: 'btn btn-danger btn-xs pull-right', style:'margin-right: 600px; margin-top: -20px' %>
</div>
<% end %>
</div>
</div>
<%= f.submit nil, :class => 'btn btn-primary' …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试测试调用http请求服务的函数,然后在订阅部分执行某些操作(调用函数并设置变量).到目前为止,我的方法是调用函数,我认为将自动调用请求服务,因此将执行订阅部分.但是,我觉得这不是这样做的方式,因为它不起作用.
我要测试的功能:
public trainBot() {
this.isTraining = true;
this.requestsService.trainModel(this.botId, false)
.subscribe(response => {
this.trainingStatus = this.trainingStatusMapping[response['status']];
this.pollTrainingStatus();
});
}
Run Code Online (Sandbox Code Playgroud)
到目前为止我的测试(这不起作用).
it('should poll the training status', () => {
spyOn(component, 'pollTrainingStatus').and.callThrough();
component.trainBot();
fixture.detectChanges();
expect(component.pollTrainingStatus).toHaveBeenCalled();
});
Run Code Online (Sandbox Code Playgroud)
那么,任何人都可以告诉我如何测试.subscribe中的那部分(...部分?
更新:
正如有人建议我将returnValue和async添加到我的测试中.他们仍然没有工作,但现在看起来像这样:
it('should poll the training status', fakeAsync(() => {
component.trainBot();
spyOn(service, 'trainModel').and.returnValue(Observable.of({'status': 'training'}));
spyOn(component, 'pollTrainingStatus').and.callThrough();
fixture.detectChanges();
tick(1);
expect(service.trainModel).toHaveBeenCalled();
expect(component.pollTrainingStatus).toHaveBeenCalled();
}));
Run Code Online (Sandbox Code Playgroud)
错误是一样的
由于某种原因,Spark 由于错误而停止工作:
Files\Java\jdk1.8.0_131""=="x" 这时候出乎意料。
我在具有管理员权限的命令提示符下在 Windows10 上运行 Spark。
我试图解决问题的事情:
我在用:
我正在做白标角度网络应用程序.是否可以在header.scss文件中导入我的config.js文件?
我尝试在我的header.scss文件中导入它:
@import '../../mixins.scss';
@import { themeColor } '../../config';
header{background-color: themeColor.backgroundColor; color:themeColor.color}
Run Code Online (Sandbox Code Playgroud)
我的配置文件:
export const themeColor = (buttonColor, textColor) =>({
backgroundColor: buttonColor,
color:textColor
})
Run Code Online (Sandbox Code Playgroud)
但是,我收到了一个错误.如何正确导入?
我正在使用 ssh2-sftp-client 读取 CSV 文件并创建一个 ReadableStream。然后我试图在库 csvtojson 的帮助下将此 readableStream 转换为 Json。但是,我总是收到以下错误:
类型错误:readStream.pipe 不是函数
到目前为止,这是我的代码:
let Client = require('ssh2-sftp-client');
let sftp = new Client();
var csv = require("csvtojson");
sftp.connect({
host: 'HOST',
port: 'PORT',
username: 'USERNAME',
password: 'PASSWORD'
}).then(() => {
return sftp.get('/home/user/etc/testfile.csv');
}).then((data) => {
csv()
.fromStream(data)
.subscribe(function (jsonObj) { //single json object will be emitted for each csv line
// parse each json asynchronousely
return new Promise(function (resolve, reject) {
resolve()
console.log(jsonObj);
})
})
}).catch((err) => {
console.log(err, 'catch error'); …Run Code Online (Sandbox Code Playgroud) 我有一个复选框,它有一个(更改)函数,它将变量'isSelected'设置为change函数的event.checked值.现在我尝试在stackoverflow上的这个问题的帮助下测试它.但是,我觉得(更改)事件没有被触发,因为'isSelected'没有改变.我还尝试在(更改)之后触发的函数上使用spyOn,但这仍然返回该函数未被调用(当前测试).也许有人知道如何发现变化以及我做错了什么.这是我的代码:
import { Component, Input, Output, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
@Component({
selector: 'app-intents-checkbox',
templateUrl: 'intents-checkbox.component.html',
styleUrls: ['intents-checkbox.component.scss']
})
export class IntentsCheckboxComponent implements OnChanges {
@Input() intentId;
constructor() { }
public isSelected = false;
intentChecked(event, intentId): void {
this.isSelected = event.checked;
}
}
Run Code Online (Sandbox Code Playgroud)
html:
<md-checkbox [checked]="isSelected"
(change)="intentChecked($event, intentId)"
class="project-checkbox">
</md-checkbox>
Run Code Online (Sandbox Code Playgroud)
到目前为止我的测试:
it('should call intentChecked on change checkbox', () => {
let de = fixture.debugElement.query(By.css('.project-checkbox'));
de.triggerEventHandler('click', {});
fixture.detectChanges();
expect(component.intentChecked).toHaveBeenCalled();
})
Run Code Online (Sandbox Code Playgroud)
(因此测试的结果是它失败了,因为没有按预期调用intentChecked).
谢谢!
javascript ×4
angularjs ×3
angular ×2
typescript ×2
unit-testing ×2
ansible ×1
apache-spark ×1
forms ×1
google-maps ×1
gruntjs ×1
html5 ×1
java ×1
jquery ×1
leaflet ×1
node.js ×1
opencv ×1
python ×1
ruby ×1
sass ×1
sftp ×1
ssh2-sftp ×1